在 R 中使用 hctreemap2 创建具有不同颜色的树图
Creating Treemap with distinct colors using hctreemap2 in R
我正在尝试使用 highcharter-package(顺便说一句,我喜欢这个包)在 R 中生成交互式树状图。
它应该看起来像这样(我什至不需要不同的级别)
示例代码:
df <- data.frame(name = c("john", "jane", "herbert", "peter"),
bananas = c(10, 14, 6, 3))
hctreemap2(df,
group_vars = "name",
size_var = "bananas")
我不希望方框具有渐变颜色,而是不同的颜色,比如红色、黄色、绿色和蓝色。
我对 highcharts-API 和 "translate" 对 R-Code 的理解越来越好,但这真的让我很难过。
我已经找到了解决方法,但我正在寻找更好的解决方案,因为 hc_add_series_treemap 已被弃用。
p <- treemap(df,
index="name",
vSize="bananas",
type="index")
highchart() %>%
hc_add_series_treemap(p,
layoutAlgorithm = "squarified")
非常感谢您的帮助:)
花了一上午(我的工作需要这个)没有找到解决方案,最后终于在这里发布了这个问题,提出后仅 10 分钟,我自己找到了解决方案,尝试了一些突然出现在我的脑海里^^
所以这里是:
hctreemap2(df,
group_vars = "name",
size_var = "bananas") %>%
hc_plotOptions(treemap = list(colorByPoint = TRUE)) %>% #allows points in the same serie to have different colors
hc_colors(c("#FFFF00", "#FF0000", "#0000FF", "#00AA00")) %>% #with this we can set the colors, note: 1st color is given to first row in the data frame (not necessarily the biggest box)
hc_colorAxis(dataClasses = color_classes(df$name)) %>% #defines acc. to which variable, a box gets a distinct color
hc_legend(enabled = FALSE) #suppresses legend
它给出了这个:
我们需要 highcharter-package 的三个额外功能,但它工作得很好!
我正在尝试使用 highcharter-package(顺便说一句,我喜欢这个包)在 R 中生成交互式树状图。 它应该看起来像这样(我什至不需要不同的级别)
示例代码:
df <- data.frame(name = c("john", "jane", "herbert", "peter"),
bananas = c(10, 14, 6, 3))
hctreemap2(df,
group_vars = "name",
size_var = "bananas")
我不希望方框具有渐变颜色,而是不同的颜色,比如红色、黄色、绿色和蓝色。 我对 highcharts-API 和 "translate" 对 R-Code 的理解越来越好,但这真的让我很难过。
我已经找到了解决方法,但我正在寻找更好的解决方案,因为 hc_add_series_treemap 已被弃用。
p <- treemap(df,
index="name",
vSize="bananas",
type="index")
highchart() %>%
hc_add_series_treemap(p,
layoutAlgorithm = "squarified")
非常感谢您的帮助:)
花了一上午(我的工作需要这个)没有找到解决方案,最后终于在这里发布了这个问题,提出后仅 10 分钟,我自己找到了解决方案,尝试了一些突然出现在我的脑海里^^
所以这里是:
hctreemap2(df,
group_vars = "name",
size_var = "bananas") %>%
hc_plotOptions(treemap = list(colorByPoint = TRUE)) %>% #allows points in the same serie to have different colors
hc_colors(c("#FFFF00", "#FF0000", "#0000FF", "#00AA00")) %>% #with this we can set the colors, note: 1st color is given to first row in the data frame (not necessarily the biggest box)
hc_colorAxis(dataClasses = color_classes(df$name)) %>% #defines acc. to which variable, a box gets a distinct color
hc_legend(enabled = FALSE) #suppresses legend
它给出了这个: