如何将图形列表发送到Bokeh vplot()

2024-09-24 20:31:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Python列表编程地建立一个plots列表,我想把它放到vplot函数,而不是当前使用的grid。文档中有子对象的显式枚举,但是我想知道是否可以获取一个figure对象的列表并将它们接收到vplot中,就像对grid对象所做的那样。在

channelPlots = []

for channel in myChannels :
    channelPlot = figure( width=1000, height=1000 , title=channel+ " Time Series" , x_axis_label = channel , y_axis_label = "TIME" )
    y           = sample.data['TIME' ]
    x           = sample.data[channel]
    channelPlot.scatter(x,y)
    channelPlots.append(channelPlot)

# With a grid it works  
#grid = GridPlot(children=[channelPlots], title="Time Series Channel Plots")

# with a vplot it breaks
grid = vplot( channelPlots )
save(grid)


Exception error is: expected an element of List(Instance(Widget)), got [[<bokeh.plotting.Figure object at 0x0000000009AA2128>, <bokeh.plotting.Figure object at 0x0000000006778CF8>, <bokeh.plotting.Figure object at 0
x0000000011894C50>, <bokeh.plotting.Figure object at 0x00000000118DE390>, <bokeh.plotting.Figure object at 0x00000000118DEF98>, <bokeh.plotting.Figure object at 0x00000000118F2668>, <bokeh.plotting.Figure object at
0x00000000118EE7B8>, <bokeh.plotting.Figure object at 0x00000000118EE630>]]

尝试下面两种方法都会引发相同的异常。。。在

^{pr2}$

Tags: 对象列表objecttimetitlebokehchannelplotting
1条回答
网友
1楼 · 发布于 2024-09-24 20:31:50

您需要将列表显式地作为children参数传递:

grid = vplot(children=channelPlots)

或者,vplot接受子元素为*args

^{pr2}$

相关问题 更多 >