ボケ-プロットのエクスポート

上記のサブコマンドに加えて、export()関数を使用してBokehプロットをPNGおよびSVGファイル形式にエクスポートできます。そのためには、ローカルPythonインストールに次の依存関係ライブラリが必要です。

PhantomJS

PhantomJSは、自動ナビゲーション、スクリーンショット、ユーザーの行動、およびアサーションを可能にするJavaScriptAPIです。ブラウザベースの単体テストを実行するために使用されます。PhantomJSはWebKitに基づいており、さまざまなブラウザーに同様のブラウジング環境を提供し、さまざまなWeb標準(DOM処理、CSSセレクター、JSON、Canvas、SVG)を高速かつネイティブにサポートします。言い換えると、PhantomJSは、グラフィカルユーザーインターフェイスのないWebブラウザーです。

Pillow、Python Imaging Library(以前はPILと呼ばれていました)は、Pythonプログラミング言語用の無料のライブラリであり、さまざまな画像ファイル形式を開いたり、操作したり、保存したりするためのサポートを提供します。(PPM、PNG、JPEG、GIF、TIFF、およびBMPを含む。)その機能の一部は、ピクセルごとの操作、マスキングと透明度の処理、画像フィルタリング、画像強調などです。

export_png()関数は、レイアウトからRGBA形式のPNG画像を生成します。この関数は、Webkitヘッドレスブラウザーを使用してレイアウトをメモリにレンダリングし、スクリーンショットをキャプチャします。生成された画像は、ソースレイアウトと同じサイズになります。Plot.background_fill_colorとPlot.border_fill_colorがNoneのプロパティであることを確認してください。

from bokeh.io import export_png
export_png(plot, filename = "file.png")

AdobeIllustratorなどのプログラムを使用して編集できるSVG要素を含むHTML5Canvasプロット出力が可能です。SVGオブジェクトはPDFに変換することもできます。ここでは、JavaScriptライブラリであるcanvas2svgを使用して、通常のCanvas要素とそのメソッドをSVG要素でモックします。PNGと同様に、背景が透明なSVGを作成するには、Plot.background_fill_colorプロパティとPlot.border_fill_colorプロパティをNoneにする必要があります。

SVGバックエンドは、Plot.output_backend属性を「svg」に設定することによって最初にアクティブ化されます。

plot.output_backend = "svg"

ヘッドレスエクスポートの場合、Bokehにはユーティリティ関数export_svgs()があります。この関数は、レイアウト内のすべてのSVG対応プロットを個別のSVGファイルとしてダウンロードします。

from bokeh.io import export_svgs
plot.output_backend = "svg"
export_svgs(plot, filename = "plot.svg")