Bokeh-exporting-plots

提供:Dev Guides
移動先:案内検索

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

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

PhantomJS

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

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")

Adobe Illustratorなどのプログラムを使用して編集できるSVG要素を含むHTML5 Canvasプロット出力が可能です。 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")