以下是如何在 Highcharts (Highcharter) 和 Shiny 中绘制堆积柱形图的示例:
library(shiny)
library(highcharter)
ui <- fluidPage(
h1("Highcharts Shiny stacked column demo"),
fluidRow(
column(width = 12, highchartOutput("hcontainer",height = "500px"))
)
)
server = function(input, output) {
output$hcontainer <- renderHighchart({
hc <- highchart() %>%
hc_chart(type = 'column') %>%
hc_xAxis(categories = c('Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas')) %>%
hc_plotOptions(series = list(stacking = 'normal')) %>%
hc_add_series(
name = 'John',
data = list(5, 3, 4, 7, 2),
stack = 'male'
) %>%
hc_add_series(
name = 'Joe',
data = list(3, 4, 4, 2, 5),
stack = 'male'
) %>%
hc_add_series(
name = 'Jane',
data = list(2, 5, 6, 2, 1),
stack = 'female'
) %>%
hc_add_series(
name = 'Janet',
data = list(3, 0, 4, 4, 3),
stack = 'female'
)
hc
})
}
shinyApp(ui = ui, server = server)
我不是 R 开发人员,所以我不知道您的数据到底是什么样的,但如果您提供有关 x 类别、系列名称和 y 值的更多详细信息,我会尽力帮助您完成图表和编辑我的回答。
这是上图的纯JS代码:https://jsfiddle.net/BlackLabel/wgthu2L5
一些 API 参考可能有用:https://api.highcharts.com/highcharts/plotOptions.series.stacking
https://api.highcharts.com/highcharts/series.column.stack
https://api.highcharts.com/highcharts/xAxis.categories