#r
#r
Вопрос:
Я пытаюсь создать 3D-гистограмму с highcharter с отображением метки по оси z и метки по оси x. Но когда мой фрейм данных имеет только одну строку, на диаграмме не отображаются столбцы. Если фрейм данных состоит из более чем одной строки, он отображается правильно.
Я хочу иметь возможность отображать 1 строку из фрейма данных также на диаграмме.
Ниже приведен воспроизводимый пример:
library(shiny)
library(highcharter)
shinyApp(
ui <- fluidPage(
fluidRow(
highchartOutput('chart')
)
),
server <- function(input, output, session) {
df <- data.frame(
Z1 = c(1, 2, 1, 4),
Z2 = c(2, 3, 2, 7),
Z3 = c(6, 3, 7, 4),
Z4 = c(3, 4, 1, 5)
)
df <- df[-(1:3),] #reduced dataframe to 1 row
dta <- lapply(seq(ncol(df)), function(x) {
list(
name = colnames(df)[x],
data = df[, x]
)
})
output$chart <- renderHighchart({
highchart() %>%
hc_chart(
type = "column",
options3d = list(
enabled = TRUE,
beta = 20,
alpha = 30,
depth = 400,
viewDistance = 10
)
) %>%
hc_xAxis(categories = row.names(df[1:nrow(df)-1,])) %>%
hc_zAxis(
min = 0,
max = 3,
categories = colnames(df)
) %>%
hc_plotOptions(
series = list(
depth = 100,
grouping = FALSE,
groupZpadding = 10
)
) %>%
hc_add_series_list(dta)
})
})