在Shiny中使用echarts4r的e_arrange函数图表不显示求助
在Shiny中使用echarts4r的e_arrange函数时图表无法显示的解决方案
你的代码存在两个关键问题导致图表无法正常显示,以下是问题分析和修正方案:
问题分析
- 语法错误:调用
e_arrange时,图表对象与title参数之间缺少逗号,导致函数无法正确解析参数 - 渲染方式不匹配:
echarts4rOutput和renderEcharts4r仅支持渲染单个echarts4r图表对象,而e_arrange生成的是多图表组合的HTML Widget,需要使用uiOutput配合renderUI来渲染
修正后的完整代码
library(shiny) library(echarts4r) ui <- fluidPage( actionButton("add", "Add Data to y"), uiOutput("plot"), # 替换echarts4rOutput为uiOutput verbatimTextOutput("selected") ) server <- function(input, output, session){ e1 <- cars |> e_charts( speed, height = 200 ) |> e_scatter(dist) |> e_datazoom(show = FALSE) |> e_group("grp") # assign group e2 <- cars |> e_charts( dist, height = 200 ) |> e_scatter(speed) |> e_datazoom() |> e_group("grp") |> # assign group e_connect_group("grp") # connect output$plot <- renderUI({ # 替换renderEcharts4r为renderUI e_arrange(e2, e1, title = "Linked datazoom") # 补全参数之间的逗号 }) } shinyApp(ui, server)
关键修改点
- 将UI中的
echarts4rOutput("plot")替换为uiOutput("plot"),用于接收组合后的HTML布局 - 将Server中的
renderEcharts4r替换为renderUI,负责渲染e_arrange生成的多图表组合 - 修正
e_arrange的参数写法,在e1和title参数之间添加逗号,保证函数正确解析参数
内容的提问来源于stack exchange,提问作者user3355655
相关产品推荐
相关产品推荐

