gpt4 book ai didi

r - 结合用于连续填充(颜色)和 alpha 比例的指南

转载 作者:行者123 更新时间:2023-12-01 03:49:08 24 4
gpt4 key购买 nike

在 ggplot2 中,我正在制作 geom_tile颜色和 alpha 随同一个变量而变化的绘图,我想制作一个单独的指南,以它们在绘图上的显示方式显示颜色,而不是两个单独的指南。

library(ggplot2)

x <- seq(-10,10,0.1)
data <- expand.grid(x=x,y=x)
data$z <- with(data,y^2 * dnorm(sqrt(x^2 + y^2), 0, 3))
p <- ggplot(data) + geom_tile(aes(x=x,y=y, fill = z, alpha = z))
p <- p + scale_fill_continuous(low="blue", high="red") + scale_alpha_continuous(range=c(0.2,1.0))
plot(p)

这会生成一个带有两个指南的图形:一个用于颜色,一个用于 alpha。我只想有一个指南,其中颜色和 alpha 随它们在图中的方式一起变化(因此当颜色变为蓝色时,它会逐渐消失)

对于这个图,我可以通过改变饱和度而不是 alpha 来实现类似的效果,但是在我使用它的实际项目中,我将把这个图层叠加在 map 的顶部,并且想要改变 alpha,所以 map 是对于较小的 z 变量值,更清晰可见。

最佳答案

我不认为你可以将连续的尺度组合成一个图例,但你可以组合离散的尺度。例如:

# Create discrete version of z
data$z.cut = cut(data$z, seq(min(data$z), max(data$z), length.out=10))

ggplot(data) +
geom_tile(aes(x=x, y=y, fill=z.cut, alpha=z.cut)) +
scale_fill_hue(h=c(-60, -120), c=100, l=50) +
scale_alpha_discrete(range=c(0.2,1))

你当然可以剪 z在不同的,也许更方便,值和更改 scale_fill_hue到您喜欢的任何色阶。

enter image description here

关于r - 结合用于连续填充(颜色)和 alpha 比例的指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24463006/

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