如何将绘图保存为pdf而没有大量的空白边距,无论如何都是整页尺寸?
我试图在下面修改我的代码,但我无法让它按需要运行。 我考虑添加一个选择器参数,但无论我使用什么目标对象,都会抛出错误,可能是因为这段代码实际上是在打开temp.html文件?
使用这个替代方案:
export(values$p, file = 'exportplot.pdf')
还会在剧情周围创造巨大的白色空间。
我花了几个小时玩剧情和导出代码的大小参数,但这似乎只是搞乱了绘图大小和绘图字体大小之间的比例。
我目前的解决方案有效,但不是100%使用webshot
我现在拥有的这个虚拟应用程序可以保存PDF格式的图表!伟大,惊人的质量,因为图像是一个矢量。 但是,我最终在pdfs中有很多空白区域和第二个空白页面 通过添加zoom = 0.6进行一些调整可以解决这个问题,但我觉得有一个更好的解决方案。
ui <- fluidPage(
mainPanel(
plotlyOutput('prlotly'),
actionButton(inputId = 'Saveplot', label = icon('floppy-o'), style = "height:40px; width:40px; border-radius: 6px; border-width:3px; border-color:#339fff;
color: #339fff; background-color:#fff; font-size:1.4em; padding:0px")
)
)
server <- function(input, output, session) {
values <- reactiveValues()
output$prlotly <- renderPlotly({ p <- plot_ly(data = mtcars, x = ~cyl, y = ~mpg, type = 'scatter', mode = 'markers')
values$p <- p
})
observeEvent(input$Saveplot, {
if (!require("webshot")) install.packages("webshot")
saveWidget(as_widget(values$p), "temp.html")
webshot("temp.html", file = "widgettoplot10.pdf", zoom = 0.6)
}, ignoreInit = T)
}
shinyApp(ui = ui, server = server)