问题标签 [bokehjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
414 浏览

javascript - Bokeh JS callback when plotting differential equations

I'm relatively new to Python and Stackoverflow so apologies if this question has already been asked but I've searched for quite a while now and can't really find a solution to what I'm trying to do.

Problem:

I've been trying to create a very basic model of the COVID-19 epidemic to familiarise myself with Python. My intention is to produce a basic SIR model that calculates susceptible, infected and removed individuals in a population. So far so good.

My problem is that I would like the plot to have an interactive slider that alters one of the constants in the differential equation.

I am using Bokeh and am trying to use Javascript Callbacks for this however I am having difficulty with the Javascript. All examples I have seen so far use line equations where y is a function of x, and which are relatively straightforward to code. In my case, since its a system of differential equations I'm not sure how I should be going about this.

I've also tried using scipy but I still encounter the same problem.

Code below. Any help/feedback/suggestions would be greatly appreciated.

Thanks!

0 投票
1 回答
76 浏览

python - 如何使用 Bokeh 在每一行中添加标签

我试图使用 Bokeh 创建一个近距离区域。我就是这样做的,

现在我想用这个函数找出每行的长度:

想要将每行中的信息作为行标签附加。我有困难。有人可以帮忙吗?

这是我的散景图:

在此处输入图像描述

但是,我想通过适当的标签来实现这样的目标:

在此处输入图像描述

如果有人帮助我实现这一目标,我将不胜感激。

0 投票
1 回答
480 浏览

python - 如果值已更改,可编辑 Bokeh DataTable 中的颜色文本

我正在使用 Bokeh DataTable 来呈现一个可编辑的表格,如果用户更改了值,我希望为单元格中的文本着色。
我试图使用HTMLTemplateFormatter,但我不知道该怎么做。
如果用户更改了第 2 行的值,我希望文本像这样着色: 基于如何为 Bokeh DataTable 中的行和/或单元格着色的示例?
在此处输入图像描述

我可以使用HTMLTemplateFormatter块比较不同的表吗?
如果没有,来自HTMLTemplateFormatter Bokeh 文档
“格式化程序可以通过传递给格式化的 dataContext 对象访问行中的其他项目”
所以我能想到的一种解决方案是加入表格并与 dataContext 对象进行比较,仅呈现我选择的列
但是,我不知道该怎么做,在我看来,这就像一个“肮脏”的解决方法

我对 python 很熟悉,但我对 Bokeh 很陌生。

有没有一个好的和简单的方法来做到这一点?
也许除了其他方法HTMLTemplateFormatter

0 投票
1 回答
787 浏览

javascript - Python / Bokeh / Javascript / js_on_change 用于堆叠条和下拉列表选择

我正在努力理解如何将 js_on_change 用于自嵌入散景堆叠条形图与下拉选择。简而言之,每当我们在下拉菜单中选择一个值时,它都应该将自己映射到主数据框的列列表中,然后可以将其用于堆叠条形图。

我认为我缺乏 Javascript 知识以及如何使用它。堆垛机,需要你的帮助。您将在下面找到应该在您的终端上运行的完整代码。

我从这个线程散景中借了一点- 使用 customJS 绘制不同的列

最终,它绘制了图形,但 javascript 部分不起作用。

在此处查看屏幕截图

0 投票
0 回答
33 浏览

python - Bokeh CustomJS 悬停在上面重新着色

我对 Python 相当熟悉,但对 Bokeh 和 javascript 都不熟悉。我正在尝试实现类似于在customjs for hover的文档中看到的效果的悬停效果。
需要注意的是,除了示例中的效果之外,我(x1, y1)希望当我将鼠标悬停在 start-point 上时end-points会改变颜色(x0, y0)
我一生无法弄清楚如何实现这一点,任何输入或好的提示?

0 投票
1 回答
253 浏览

python - 链接 JS 散景小部件

我有两个简单bokeh的小部件:aSelect和 a Slider- 我可以让这两个小部件分别工作,但我找不到将这两个小部件链接在一起的方法 - 因此js_on_change对其中一个小部件的操作将更新另一个小部件的状态。

我在下面的尝试在链接阶段失败了:

我需要在 JS 代码上运行此行为,至于我的用例,我需要将生成的小部件嵌入到静态 HTML 页面(无散景服务器)中。

感谢您的任何建议!

0 投票
0 回答
281 浏览

python - Bokeh 嵌入式绘图在 Flask App 中没有动态表现,没有错误

嵌入 Flask 时散景的动态属性丢失。我制作了与我的绘图示例绘图相关的简单程序,我可以在脚本本身中生成数据并绘制。由于之前的情节在 jupyter 中是动态的,但是散景图嵌入到情节的烧瓶动态性质中消失了 .:( 您可以尝试下面的代码 - 简单的示例代码。

主要python脚本文件

plot.html 下面

下面的layout.html

java控制台的输出图如下。我们可以在输出嵌入图中看到,图本质上是静态的 在 此处 输入图像描述 在此处输入图像描述 我将非常感激并感谢您的帮助。为什么当我们嵌入烧瓶时绘图本质上不是动态的,osm 映射工作正常。谢谢你。

0 投票
0 回答
42 浏览

python - 一旦数据可用,如何更新 python 散景图?

完成所有数据点的读取后,散景服务器图将更新。

我希望数据点从文件流中一一更新。

我有 MVC 风格的代码:

控制器打开文件流,从文件中读取一行,解析它并提供给查看。

该视图通过使用ColumnDataSource. 一旦控制器调用更新函数,新数据就会流式传输到绘图中。

有没有人有一个例子或提示,它是一个一个而不是一起完成的?我已经尝试添加定期回调,并且通常遵循散景画廊OHLChttps://github.com/bokeh/bokeh/tree/master/examples/app/ohlc)中的示例。

我认为原因可能是,回调必须来自与接口的交互,而不是来自代码内部。按下按钮进行更新或定期回调都可以做到这一点。但是,像这样添加定期回调curdoc().add_periodic_callback(self.update, 1)并没有帮助。第二个想法是阅读的基本过程阻止了绘图。我编写的其他散景应用程序,例如按下按钮的地方,没有这个问题。唉,这里的情节只有在所有阅读完成后才可用。

非常感谢!

编辑:控制器的代码:

0 投票
1 回答
242 浏览

python - Python-Bokeh 应用程序:无法通过单击 Bokeh Button 小部件将更新的数据从 Webapp 导出到本地系统

我目前正在创建一个在服务器上运行的基于 Python- Bokeh的 webapp 应用程序。在此应用程序中,用户可以预览来自 pandas 数据框的数据(使用 BOKEH DATATABLE 显示),并可以根据业务需要修改数据。刷新数据框后,用户需要通过单击 BOKEH BUTTON 小部件将数据框导出到他的本地系统(以 csv 格式) 。

现在我能够创建 webapp 应用程序,但是在将数据导出到本地系统时会导致问题。当我单击按钮下载时,会下载一个 csv 文件,其中包含数据框中的初始默认数据。之后,即使我更新了数据框并再次单击“下载”按钮,也会下载相同的旧默认数据,而不是更新的数据框。

下面是我最后尝试的代码。请建议,需要对以下代码段进行哪些更改,以便每次刷新数据并单击下载按钮时,它将导出数据表中显示的最新数据。

0 投票
2 回答
204 浏览

python - 散景自定义扩展问题

我正在尝试了解如何实现散景自定义扩展来创建一些我想要用于我的数据项目的小部件。我试图在此处遵循此示例,但在运行 bokeh 提供的示例扩展时遇到了问题。我目前正在返回一个错误

ValueError:期望 HasProps 的子类,得到类 'bokeh.models.sources.ColumnDataSource'

这是当 DrawTool 类在第 80 行调用 source = Instance(ColumnDataSource) 时引起的。我不确定我现在做错了什么,但我的第一个想法是它与我正在使用的 IDE 有关吗?我目前正在使用 spyder(python 3.6) 并拥有最新的散景更新 2.1.0。

这是我第一次体验散景扩展,所以我很无知,我一直在网上寻找帮助,但找不到太多。我当前的代码正是他们在示例站点上的代码,但为了方便起见,我将其发布在这里,