web-dev-qa-db-ja.com

PlotlyからRでPNGファイルをエクスポートする

コードを使用して、PlotlyチャートをRから画像としてエクスポートするにはどうすればよいですか? (チャートのエクスポートボタンは使用しません)。

たとえば、Plotlyサイトの次のコードは、このグラフを作成します。

library(plotly)
set.seed(100)
d <- diamonds[sample(nrow(diamonds), 1000), ]
plot_ly(d, x = carat, y = price, text = paste("Clarity: ", clarity),
        mode = "markers", color = carat, size = carat)

plotly chart

どうすれば画像として保存できますか?

公式サイトには この資料 がpythonで表示されていますが、Rで同様のものが見つかりませんでした。

13
Murta

export関数があり、plotlyサーバーに接続せずに画像を保存できます。 plotly package doc にあります:

p <- plot_ly(...)
export(p, file = "image.png")

拡張子を.pngjpeg、または.pdfとして選択することで、出力のファイルタイプを変更することもできます。

htmlファイルに画像を保存することもできます。これにより、htmlwidgets::saveWidgetを使用して、ズームや注釈の表示などのplotlyを体験できます。

p <- plot_ly(...)
htmlwidgets::saveWidget(p, file = "image.html")
8
JaKu

CRANのPlotly docs で、関数plotly_IMAGEを発見しました。

次に例を示します。

set.seed(100)
d <- diamonds[sample(nrow(diamonds), 1000), ]
p <- plot_ly(d, x = carat, y = price, text = paste("Clarity: ", clarity),
        mode = "markers", color = carat, size = carat)

plotly_IMAGE(p, width = 500, height = 500, format = "png", scale = 2,
             out_file = "~/desktop/test.png")

更新

plotly_IMAGEはPlotlyサーバーを使用して動作します。ローカルソリューションは大歓迎です。

6
Murta

Plotlyによると、次のように動作するはずです。

1)以下の説明に従ってOrcaをインストールします: https://github.com/plotly/orca

2)PCを再起動する必要があるかもしれません

次に、次のコードを実行します。

Plotlyサーバーに接続せずに画像を保存できるエクスポート機能があります。それはplotlyパッケージdocにあります:

p <- plot_ly(...)
orca(p, file = "image.png")

注:フルパスを指定すると、JavaScriptエラーが発生することがわかりました。だから私はちょうどファイル名を与えました。ファイルはWindowsの"C:/Users/user/Documents"に保存されています。

1
Soumya Boral

初心者なのでコメントはできないので返答として投稿しています。 export関数はplotly v4.9.0で廃止されました。代わりに、orca関数は、静的なイメージとしてplotlyオブジェクトをエクスポートするための推奨される方法です。詳細はこちら: orca function Rのドキュメント

0
Eli Groves