首页 > 解决方案 > highcharter:在只有一列的柱形图中修复 x 轴标签

问题描述

我有以下代码来创建一个简单的列图,它工作正常:

library(highcharter)
d1 <- iris %>% group_by(Species) %>% 
  summarize(mean_sepal_width = mean(Sepal.Width))

highchart() %>% 
  hc_chart(type = 'column') %>% 
  hc_xAxis(categories = d1$Species) %>% 
  hc_add_series(data = d1$mean_sepal_width)

但是,当我对输入数据进行子集化以便只存在一个 x 变量时,x 轴标签会被破坏:

d2 <- d %>% filter(Species == 'virginica')
highchart() %>% 
  hc_chart(type = 'column') %>% 
  hc_xAxis(categories = d2$Species) %>% 
  hc_add_series(data = d2$mean_sepal_width)

在此处输入图像描述

这里提供了一个潜在的解决方案(Highcharter bar chart cut off x axis label),但我不喜欢使用 hchart() 函数,因为我的实际绘图要复杂得多。

有没有办法修复这些 x 轴标签?

标签: rhighchartsr-highcharter

解决方案


放入d2$Species一个列表(或使用as.list)。这是一个已知的错误

highchart() %>% 
  hc_chart(type = 'column') %>% 
  hc_xAxis(categories = as.list(d2$Species)) %>% 
  hc_add_series(data = d2$mean_sepal_width)

具有 xaxis 类别的 highcharter


推荐阅读