通过 R ggplot2 中的第三个变量对热图进行分组

问题描述 投票:0回答:1

我想制作一个热图,在其中通过另一个变量对 y 轴进行排序和分组,例如使用此代码我可以制作一个热图,显示克拉的切割和颜色

ggplot(diamonds, aes(cut, color, fill=carat))+
  geom_tile()+
  theme_bw()+
  theme_ipsum()

我还想按清晰度对颜色进行分组,并在输出中显示这一点 - 有没有办法做到这一点

r ggplot2 heatmap
1个回答
0
投票

您可以通过创建

color
clarity
的组合因子来实现此目的,并将其绘制在 y 轴上。

diamonds$clarity_color <- factor(with(diamonds, paste(clarity, color, sep = "_")),
                             levels = with(diamonds, unique(paste(clarity, color, sep = "_")[order(clarity, color)])))

ggplot(diamonds, aes(cut, clarity_color, fill = carat)) +
  geom_tile() +
  theme_bw() +
  theme_ipsum() +
  labs(y = "clarity + colour")
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.