r 为 modebarButtons 设置全局选项

ibo*_*oru 5 r ggplot2 shiny plotly

创建 ggplot 对象的绘图对象。是否可以全局设置模式栏选项,以便每个绘图仅显示以下模式栏按钮,如 myPlot_c 中所示。

library(ggplot2)
library(plotly)
library(dplyr)


myPlot_a <- ggplot(mtcars, aes(x=disp,y=mpg)) + geom_point()
myPlot_b <- ggplotly(myPlot_a)

#Is it possible to set this global, so don't have to repeat for each plot
myPlot_c <- myPlot_b %>% 
  config(displaylogo=F,
         modeBarButtonsToRemove = 
           list("sendDataToCloud","zoom2d","pan2d","select2d","lasso2d",
                "zoomIn2d","zoomOut2d","autoScale2d","hoverClosestCartesian",
                "hoverCompareCartesian"))
Run Code Online (Sandbox Code Playgroud)

我可以包装在一个函数中,但发现如果每次都设置 modebarButtons,则与闪亮的应用程序结合使用 renderPlotly() 会遇到很多滞后。

小智 -1

尝试指定配置来自的包:

library(ggplot2)
library(plotly)
library(dplyr)


myPlot_a <- ggplot(mtcars, aes(x=disp,y=mpg)) + geom_point()
myPlot_b <- ggplotly(myPlot_a)

#Is it possible to set this global, so don't have to repeat for each plot
myPlot_c <- myPlot_b %>% 
  plotly::config(displaylogo=F,
         modeBarButtonsToRemove = 
           list("sendDataToCloud","zoom2d","pan2d","select2d","lasso2d",
                "zoomIn2d","zoomOut2d","autoScale2d","hoverClosestCartesian",
                "hoverCompareCartesian"))
Run Code Online (Sandbox Code Playgroud)