gpt4 book ai didi

r - 在ggplot2中为不同因素映射两种颜色美学

转载 作者:行者123 更新时间:2023-12-04 18:20:21 25 4
gpt4 key购买 nike

我正在尝试使用 ggplot 制作一个简单的字段图。现场设计的格式如下:

design <- data.frame(Genotype=rep(LETTERS[1:4], 4), Status=rep(c("P","N"), each=8),
Density=rep(c(40,80), each=4),
Row=rep(seq(1:4)),
Range=rep(1:4, each=4))

我想要一个填充映射到 Genotype 的 map 以及映射到 Density 的其他内容(理想情况下是亮度) .我最接近的是使用 alpha ,但这并不理想,因为它从非常低的 alpha 变为非常高。在非常低的 alpha 下,很难看出填充是什么。

这是我目前情节的代码:
d.p <- ggplot(design, aes(Row, Range))
d.p1 <- d.p + geom_tile(aes(fill=Genotype, alpha=Density))

我摆弄了 scale_fill_hue但似乎无法使任何明智的事情发生。

提前致谢。

编辑

很抱歉,当我制作上面修复的可重现示例时,我意识到我遗漏了现实世界问题的一个基本方面。

如下所述, alpha可以映射到Density,但我还需要区分 Status .孵化似乎是一个显而易见的解决方案,但我知道这不是一个选择。我可以手动分配相似的颜色(浅蓝色、深蓝色等),但我真的很希望能够自动执行此操作,以便我可以为任何现场设计做到这一点。

任何想法表示赞赏,并为混淆感到抱歉!

最佳答案

我将忽略 Row 的事实。和 Genotype包含冗余信息,并提供:

ggplot(design,aes(x = Row,y = Range)) + 
geom_tile(fill = "transparent",colour = "black") +
geom_point(aes(colour = Genotype,size = factor(Density),shape = Status)) +
scale_size_manual(values = c(3,6))

enter image description here

但有些事情告诉我,你也不能这样做是有原因的。

关于r - 在ggplot2中为不同因素映射两种颜色美学,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10809166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com