簡単なバージョンのプログラムをデータで投稿できますか?
あなたのコールバック関数では、dataset_select.valueおよびsamples_slider.valueを使用してデータを更新するため、プロットが更新されていない可能性があります。しかし、これらにはSlider/Selectを変更する前の値が含まれています。新しい引数を使うべきです。これが動作するかどうか
参照:
def update_select_samples_or_dataset(attrname, old, new):
global X, Y
dataset = new
n_samples = int(samples_slider.value)
asdata = get_dataset(dataset, n_samples)
X = asdata[['aspects','importance']].as_matrix()
source.data = dict(x=X[:,0], y=X[:,1])
def update_slider_samples_or_dataset(attrname, old, new):
global X, Y
dataset = dataset_select.value
n_samples = int(new)
asdata = get_dataset(dataset, n_samples)
X = asdata[['aspects','importance']].as_matrix()
source.data = dict(x=X[:,0], y=X[:,1])
dataset_select.on_change('value', update_select_samples_or_dataset)
samples_slider.on_change('value', update_slider_samples_or_dataset)
どのようにあなたがそれを実行しようとしていますか? Bokehサーバアプリケーションは 'bokeh'コマンドで実行する必要があります。 'bokeh serve --show app.py'すでにこれをやっているのであれば、何をデバッグしようとしましたか? – bigreddot
こんにちは、私はbokeh serve --show app.pyを使っています。私はここにpastebin.com/rn36b3aYという新しい読みやすいバージョンを入れました。更新プログラムはまだ正しく動作していません。これは、57のようなx =要因によるものです。データフレーム "asdata"には、1つのカテゴリカル(最初のカラム)と1つの数値カラム(2番目のカラム)があります。数値の列は更新されているようですが、カテゴリの列は更新されていないようです。たとえば、57行目をplot.vbar(x = 'y'、width = 0.5、bottom = 0、top = 'y'、source = source)に切り替えると、プロットは正しく更新されます( 'y'は数値列データフレームの)。 – Kyle