带散景的全息视图不显示情节



我正在尝试创建一个环境,在其中我使用PyCharm开发Python代码,同时使用全息视图和散景创建交互式图表。

我按照Holoview简介中的步骤进行操作,它可以在Jupyter笔记本中工作 - 图表确实具有很好的交互性。但是,当我在 PyCharm 的 Python 控制台中运行相同的代码时,没有显示图表或浏览器。

相比之下,当我直接调用散景的方法时,如本例所示,浏览器启动,我可以交互式地操作图表。我想使用全息视图(+散景(来实现这一点。

非常感谢您的帮助。

我的图书馆:

  • 蟒蛇 3.4.5
  • 全息视图 1.8.1
  • 散景 0.12.6
  • 参数 1.5.1
  • iPython 6.1.0
  • 朱皮特 1.0.0
  • 熊猫 0.20.3
  • 1.13.1
  • 西皮 0.19.1

您唯一需要添加到代码中的是show(hv.render(your_holoviews_plot)),如下所示:

import holoviews as hv
hv.extension('bokeh')
from bokeh.plotting import show
show(hv.render(your_holoviews_plot))

当您在 PyCharm(或任何其他 IDE(中运行脚本时,这将在浏览器中打开您的绘图。

它将散景设置为渲染器,并使用bokeh.plotting.show((在浏览器中打开绘图
所以无需转到命令行等。

完整的工作示例代码:

# import libraries
import numpy as np
import pandas as pd
import hvplot.pandas
import holoviews as hv
# setting bokeh as backend
hv.extension('bokeh')
# going to use show() to open plot in browser
from bokeh.plotting import show
# create some sample data
data = np.random.normal(size=[50, 2])
df = pd.DataFrame(
data=data,
columns=['col1', 'col2'],
)
# using hvplot here to create a holoviews plot
# could have also just used holoviews itself
plot = df.hvplot(kind='scatter', x='col1', y='col2')
# use show() from bokeh
show(hv.render(plot))

解决方案在: http://holoviews.org/user_guide/Deploying_Bokeh_Apps.html

您需要以下代码行:

import holoviews.plotting.bokeh
....
layout=#whathever holoview you want to plot
...
doc = hv.renderer('bokeh').server_doc(layout)

然后转到命令提示符,cd 到正确的目录并运行:bokeh serve --show myscript.py

相关内容

最新更新