2017-07-06 101 views
0

我想添加兩個步驟的情節相同的散景情節。雖然每個步驟圖都有不同的x值,因此bkcharts包中的Step函數不起作用。我想覆蓋bkcharts包生成的兩張單Step圖表,但似乎無法使用holoviews創建步驟圖。有一個簡單的解決方法嗎?使用holoviews散景的步驟陰謀

import bokeh.plotting as bk 
from bokeh.charts import Step 
import pandas as pd 

data1 = pd.DataFrame({'time': [1,3,5,7], 'value': [3,4,1,3]}) 
data2 = pd.DataFrame({'time': [2,4,6,9], 'value': [2,1,4,2]}) 


step1 = Step(data1, x='time', y='value') 
step2 = Step(data2, x='time', y='value') 

bk.show(Step(data1, x='time', y='value')) 
bk.show(Step(data2, x='time', y='value')) 

我想這樣做step1 * step2

回答

3

HoloViews不會讓你做一個步驟圖,使用期權的曲線元素。看到Gallery的例子:

%%opts Curve [width=600] NdOverlay [legend_position='right'] 
hv.NdOverlay({interp: hv.Curve(points[::8])(plot=dict(interpolation=interp)) 
       for interp in ['linear', 'steps-mid', 'steps-pre', 'steps-post']}) 

enter image description here

你可以做同樣的定期覆蓋(在*運營商)也;關鍵是將interpolation選項設置爲可用類型的步驟之一。

+0

下面是一個更好的鏈接,從Philipp Rudiger到一個與Bokeh示例相匹配的副本的示例:http://holoviews.org/gallery/demos/bokeh/step_chart.html#bokeh-gallery-step-chart –

+0

如何將x座標添加到全景圖曲線? –

+0

不確定你的意思; holoviews曲線已*有* x座標? –