如何使用代码将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)
如何将其另存为图像?
官方网站在python中有this material,但我在R中找不到类似的内容。
答案 0 :(得分:6)
在Plotly docs in CRAN我发现了函数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服务器。欢迎本地解决方案。
答案 1 :(得分:5)
有export
功能,无需连接plotly
服务器即可保存图像。您可以在plotly package doc:
p <- plot_ly(...)
export(p, file = "image.png")
您甚至可以通过选择.png
,jpeg
或.pdf
扩展名来更改输出的文件类型。
您还可以将图片保存在html
文件中,该文件可让您plotly
使用htmlwidgets::saveWidget
进行缩放或显示注释的体验:
p <- plot_ly(...)
htmlwidgets::saveWidget(p, file = "image.html")
答案 2 :(得分:1)
根据以下说明,应该可以工作:
1)按照此处所述安装Orca:https://github.com/plotly/orca
2)您可能需要重新启动PC
然后运行以下代码:
有一个导出功能,使您无需连接到绘图服务器即可保存图像。您可以在plotly软件包doc中找到它:
p <- plot_ly(...)
orca(p, file = "image.png")
注意::我发现给出完整路径会引发JavaScript错误。所以我只给了文件名。这些文件将保存在Windows的"C:/Users/user/Documents"
中。
答案 3 :(得分:0)
由于我是新手,因此无法发表评论,因此将其作为回复发布。 export
函数自plotly v4.9.0
起已被弃用。相反,建议使用orca
函数将绘图对象导出为静态图像。在此处了解更多信息:orca function R documentation