Bokeh-filtering-data
ボケ-データのフィルタリング
データセット全体ではなく、特定の条件を満たすデータの一部に関するプロットを取得したい場合がよくあります。 bokeh.modelsモジュールで定義されたCDSViewクラスのオブジェクトは、1つ以上のフィルターを適用することにより、検討中のColumnDatasourceのサブセットを返します。
IndexFilterは、最も単純なタイプのフィルターです。 図のプロット中に使用するデータセットの行のみのインデックスを指定する必要があります。
次の例は、CDSViewをセットアップするためのIndexFilterの使用を示しています。 結果の図は、ColumnDataSourceのxデータ系列とyデータ系列の間の線グリフを示しています。 ビューオブジェクトは、それにインデックスフィルターを適用することによって取得されます。 このビューは、IndexFilterの結果として円記号をプロットするために使用されます。
例
出力
データソースから特定のブール条件を満たす行のみを選択するには、BooleanFilterを適用します。
典型的なBokehインストールは、sampledataディレクトリにある多数のサンプルデータセットで構成されています。 次の例では、unemployment1948.csvの形式で提供される unemployment1948 データセットを使用します。 1948年以降、米国の失業率を年ごとに格納しています。 1980年以降のプロットのみを生成します。 そのために、CDSViewオブジェクトは、指定されたデータソースにBooleanFilterを適用することによって取得されます。
出力
フィルターを適用する際の柔軟性を高めるために、BokehはCustomJSFilterクラスを提供しており、ユーザー定義のJavaScript関数を使用してデータソースをフィルタリングできます。
以下の例では、同じUSA失業データを使用しています。 1980年以降の失業率をプロットするためのCustomJSFilterの定義。