ggplotly包裹环境下无法设置panel.border及面板边框不显示的问题求助
ggplotly包裹环境下无法设置panel.border及面板边框不显示的问题求助
我开发Shiny应用有一阵子了,上周安装了新版RStudio(版本2025.09.0-387)后,顺便更新了所有R包。结果突然遇到一个头疼的问题:原本正常生效的ggplot主题设置,被ggplotly()包裹后就失效了,我现在只想让图表的面板边框显示为黑色,但试了好几种方法都没成功。
先给大家看几个测试代码:
# 这段代码完全正常,能显示出theme_bw自带的黑色面板边框 ggplot(mpg, aes(displ, hwy)) + geom_point() + theme_bw()
但只要用ggplotly包裹,边框就直接消失了:
# 被ggplotly包裹后,面板边框彻底不见了 ggplotly( ggplot(mpg, aes(displ, hwy)) + geom_point() + theme_bw() )
我还手动指定了panel.background的颜色,结果还是没用:
# 手动设置panel.background的边框颜色也不生效 ggplotly( ggplot(mpg, aes(displ, hwy)) + geom_point() + theme_bw() + theme(panel.background = element_rect(fill = NULL, colour = "black")) )
目前我的相关包版本信息:
- ggplot2: 4.0.0
- plotly: 4.11.0
有没有大佬能帮忙分析下原因,或者给个可行的解决办法呀?万分感谢!




