私はビン内のデータを動的に可視化できるbokehを使ってPythonでプロットを作成しようとしています。私はPythonには比較的新しい、bokehにはまったく新しいことを知っておく価値があります。私はZERO javascriptを知っています。Python bokehプロットでSpanとSliderを動的にリンクする
Link a Span or Cursor in between plots with Bokeh in Python
と、この:
http://bokeh.pydata.org/en/latest/docs/user_guide/interaction/callbacks.html
が、トラブルそれぞれの必要な部品を実装したのです、私はこのことを相談してきました。ここに私のコードは、要求された機能を追加する前に、次のとおりです。
from bokeh.layouts import column, widgetbox
from bokeh.models.widgets import Slider
from bokeh.models import Span, CustomJS
output_file('Raw_Spectra_and_Spillover_Data.html')
# widgets for bin setup
Pix1_LowLow = Slider(start = self.StartDAC, end = self.EndDAC, value = 129, step = 1, title = 'Pixel-1 - Low Bin - Low Thresh')
Pix1_LowHigh = Slider(start = self.StartDAC, end = self.EndDAC, value = 204, step = 1, title = 'Pixel-1 - Low Bin - High Thresh')
Pix1_HighLow = Slider(start = self.StartDAC, end = self.EndDAC, value = 218, step = 1, title = 'Pixel-1 - High Bin - Low Thresh')
Pix1_HighHigh = Slider(start = self.StartDAC, end = self.EndDAC, value = 500, step = 1, title = 'Pixel-1 - High Bin - High Thresh')
plot1spect = figure(width=700, height=250, title='pixel-1 Spectrum')
plot1spect.line(self.SpectDACvals1[0], self.SpectrumData1[0], line_width=2)
plot1spect_LowLowSpan = Span(location=Pix1_LowLow.value, dimension = 'height')
plot1spect_LowHighSpan = Span(location=Pix1_LowHigh.value, dimension = 'height')
plot1spect_HighLowSpan = Span(location=Pix1_HighLow.value, dimension = 'height')
plot1spect_HighHighSpan = Span(location=Pix1_HighHigh.value, dimension = 'height')
plot1spect.renderers.extend([plot1spect_LowLowSpan, plot1spect_LowHighSpan, plot1spect_HighLowSpan, plot1spect_HighHighSpan])
plot1spill = figure(width=700, height=250, title='pixel-1 Spillover')
plot1spill.line(self.SpillDACvals1[0], self.SpillData1[0], line_width=2)
plot1spill_LowLowSpan = Span(location=Pix1_LowLow.value, dimension = 'height')
plot1spill_LowHighSpan = Span(location=Pix1_LowHigh.value, dimension = 'height')
plot1spill_HighLowSpan = Span(location=Pix1_HighLow.value, dimension = 'height')
plot1spill_HighHighSpan = Span(location=Pix1_HighHigh.value, dimension = 'height')
plot1spill.renderers.extend([plot1spill_LowLowSpan, plot1spill_LowHighSpan, plot1spill_HighLowSpan, plot1spill_HighHighSpan])
show(row(plot1spect,plot1spill, widgetbox(Pix1_LowLow, Pix1_LowHigh, Pix1_HighLow, Pix1_HighHigh)))
このコードは私にこれを与える:
誰かがPix1_LowLow
スライダーが動的plot1spect_LowLowSpan
の位置を制御するために取得する方法私を見ることができれば、私はこの技術を他のスライダーとスパンに拡張することができます。事前に多くの感謝!
python 3.5.2 - bokeh 12.0
あなたのコードにインデントを削除してください。あなたの質問に絵を入れないでください - リンクとして。インラインコードに 'backticks'を使用してください。あなたのpythonのバージョンを指定してください。 – buhtz
完了...申し訳ありません... – AJee
私が正解としてくれた完全な実例をマークできたらうれしいです。 – bigreddot