问题标签 [holoviz]

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 投票
1 回答
516 浏览

python - HoloViews - NdOverlay - 图例

我有多个 holoviews.Curve 对象的 hv.NdOverlay 图。曲线对象属于一个组(在本例中为组“A”或组“B”)。如何设置 hv.NdOverlay 图以显示显示两组的图例?

代码示例(holoviews 版本:1.13.4):

我得到的是: Line plo,2组

我想要的是一个有 2 个条目的图例,一个显示一条红线,后跟字母“A”,另一个显示一条绿线,后跟字母“B”。看起来 holoviews.NdOverlay 正在从curves_dict. 但密钥必须是唯一的。所以看起来这对我的预期情节不起作用。有没有不同的方法来设置 holoviews.NdOverlay 以便我得到上面描述的图例?

0 投票
1 回答
298 浏览

matplotlib - 如何为 Bokeh 或 Holoview 中的“超出范围”值扩展颜色条?

在 Matplotlib 中,有一个 colorbar 属性extend可以为超出范围的值设置尖端。您将如何使用 Bokeh 或 Holoview 制作第三个子图?

我在下面添加了一个Matplotlib 示例

示例图,带有尖端的颜色条指出更高的值:

示例绘图尖端颜色条

0 投票
1 回答
239 浏览

python - Holoviz/Param/Panel:是否可以更改、隐藏或删除参数化类中保存参数的参数面板的标题?

我通过Parameterized以下方式定义了一个自定义类:

每当我想实例化此类并生成带有小部件的窗格以选择参数时,根据文档,我使用以下内容:

这给了我以下输出:

带有小部件和标题的面板

我想知道如何修改默认为类名的标题?理想情况下,如果我将这些小部件拆分到多个窗格中,它将处于pn.panel(...)我希望控制特定标题的级别。

看:

这会产生(我想为每个窗格指定自定义标题):

面板一分为二

0 投票
0 回答
113 浏览

python-3.x - 如何在python中链接几个散景/全息视图/面板对象的悬停?

是否可以“链接”两个散景/全息对象的悬停,以便同时显示两个对象上的悬停?

这是我想要实现的示例:

在此处输入图像描述

目前我只能在其中一个图像上显示悬停,但不能同时在两个图像上显示: 在此处输入图像描述

请在下面找到我用来生成最后一个数字的可重现代码。

0 投票
1 回答
118 浏览

python - holoviz/param/panel:通过 python 回调更新 Str 或 HTML 窗格

我想知道是否有办法panel通过 python 回调更新窗格内容。

如果我Parameterized通过以下方式定义自定义类:

如果我在笔记本中输出这个实例,我会得到以下信息:

产量:

实例表示

但是,当我在下拉列表中选择另一个条目时,右侧的文本不会更新:

实例的另一种观点

我知道参数已经更新,并且text回调被触发(通过调试)。然而,我的笔记本没有更新。

我觉得这个例子与文档( https://panel.holoviz.org/user_guide/Param.html )中的正弦波示例非常相似,但我不明白我做错了什么......

理想情况下,答案也应该与 apanel.pane.HTML和 a一起使用panel.pane.Str

0 投票
0 回答
78 浏览

python - holoviz/holoviews/panel:在单独的窗格中“布局”的全息图的轴限制的默认设置

我想知道什么是让元素属于同一全息图布局但在单独的面板上的最佳方式,pane其轴限制的计算方式与渲染整个布局时的方式相同。

下面的例子更简单。

假设我定义了一个HoloMap我渲染为NdLayout条形图的 a:

此布局清晰呈现,y 轴限制设置为显示条形的顶部:

布局

但是,如果我想为了自定义而将布局的元素分隔在不同pane的 panel 中,则 y 限制是在第一个渲染元素上计算的:

截断的条形图

有没有办法在渲染整个布局时强制计算 y 轴限制?

作为旁注,我注意到如果我渲染完整布局,然后渲染其中的一部分,则轴限制设置正确。也许可以利用这一点,但我不知道如何渲染布局然后隐藏它......

布局和面板行

0 投票
0 回答
248 浏览

python - 如何使用 `add_next_tick_callback` 制作面板包裹的散景图?

我在笔记本(VS Code)中有一个散景图,我想在x_range更改时更新它。为了启用从 JS 到 Python 的回调,我将图形包装在 Panel 中panel

在此示例中,我没有实际更新图形,而是有一个额外TextAreaInput的记录回调事件。这是它的样子:

问题是每次更改都会x_range导致四个事件,并且图形更新可能需要一秒钟。(两个事件是有意义的,因为我有两个回调,但为什么每个事件都发送两次?)因此我想阻止更新执行四次。

查看 Bokeh 文档,有一个方法add_next_tick_callback。想法是在事件发生时添加此回调,但如果存在旧回调,也将其删除。就像是

然后将在 中执行图形更新tick_callback

这行不通。change_callback仍然被调用并创建一系列NextTickCallback对象,但从tick_callback未被调用。

我认为这可能是由于curdoc()没有在 Panel 的上下文中返回正确的 Bokeh 文档。还有fig.document,但是它提供与 相同的文档curdoc()。还有pn.statewhich 有一个add_periodic_callback方法,但没有add_next_tick_callback.

如何使用add_next_tick_callback面板包裹的散景图?

0 投票
0 回答
61 浏览

bokeh - 如何面板服务到 AWS 中的默认端口 80 - bokeh nginx 问题

我正在尝试从 AWS 中的 EC2 提供 Panel 应用程序。虽然我已经能够通过默认端口 5006 将应用程序直接提供给一般互联网,但我无法通过默认端口 80 来实现。为了通过默认端口提供服务,我遵循了反向代理的方法使用 nginx。虽然 nginx 似乎处于活动状态并正在重定向,但没有显示任何内容。

这就是我所做的。我的域名是www.atlasdeuda.net。我已将 AWS 配置为将域路由到我的 ec2 的公共 IP。当我使用以下方法将 Panel 应用程序服务到端口 5006 时,效果很好:

panel serve --port=5006 visualizacion.ipynb --allow-websocket-origin=www.atlasdeuda.net:5006

我能够使用浏览器和 url 正确地可视化应用程序并与之交互:

到目前为止,一切都很好。问题是我想使用该应用程序并浏览www.atlasdeuda.net

为此,我遵循了设置 nginx 服务器并将反向代理到端口 5006 的建议方法。

我的 nginx.conf 文件的内容如下:

在这种情况下,我只需运行即可启动散景服务器

panel serve --port=5006 visualizacion.ipynb --allow-websocket-origin=www.atlasdeuda.net

如果我检查 nginx 服务器的状态(使用 systmctl status nginx),则消息说它处于活动状态(正在运行)。另外,当我在浏览器中导航到 www.atlasdeuda.net时,浏览器被重定向到 www.atlasdeuda.net/visualizacion,所以我假设它正确地重定向到 5006。

尽管如此,浏览器显示了一个完整的空白页面,因此似乎无法加载任何内容。

0 投票
0 回答
86 浏览

python-sphinx - 当我为继承 param.Parameterized 的类制作 sphinx-build 文档时出现格式错误

我正在尝试为我正在制作的一些软件创建文档,但遇到了以下问题。我在这里从 param.Parameterized repo继承的任何类最终都会在我编写的 Docstring 内容之后以纯文本形式编写看起来像 param 的“迷你”文档。

如上面的屏幕截图所示,有一个小例子,这是产生的:

我的conf.py包含:

我的 index.rst 是:

我的 example.py 包含:

我不确定问题出在 param 类还是 sphinx 上,所以如果有人知道如何关闭文档的这个额外部分,我将不胜感激。

构建的文档:

构建的文档

0 投票
1 回答
153 浏览

html5-video - 如何将散景/面板动画与 dash.js 等视频播放器同步?

我正在使用散景和面板创建动画情节以及一些导航控件,如滑块、播放/暂停、跳过 5 秒等。

同时,有一些视频片段我想与该动画同步显示。我开始使用 dash.js 并设法相应地准备视频并将其显示在独立页面中。(耶!)

由于我不太了解javascript,所以我想知道:是否有同步这两件事的解决方案?

(一个梦想的场景:一个面板小部件,用于从 python 显示和控制 dash.js 视频播放器。嗯,希望对吧?但我会接受任何提示、建议和想法。)