R plot / ggplot2加透明度

2020-04-01 15:56:26 浏览数 (1)

有的时候在画图的时候,需要调节一下点或者bar的透明度,看起来更好看一点。

1.ggplot2 - alpha参数

代码语言:javascript复制
library(ggplot2)
data(iris)
ggplot(iris, aes(x = Sepal.Length, y = Petal.Length, color = Species))   
geom_point(size = 3)   theme_bw()

画出来:

scatterplot without alpha

加上透明度,alpha范围是从0到1,1是原来的颜色,数字越大颜色越深。

代码语言:javascript复制
ggplot(iris, aes(x = Sepal.Length, y = Petal.Length, color = Species))   
  geom_point(size = 3, alpha = 0.3)   theme_bw()

效果:

scatter plot with alpha

2.plot修改 plot画图的时候,直接修改col就可以,一个比较方便的方法是用rgb()函数。这个函数提供三个值,默认情况下是0到1的值,可以修改maxColorValue为255,这是我们比较常见的数值范围。rgb还可以提供第四个参数,也就是透明度。如下所示: 没有透明度:

代码语言:javascript复制
plot(x = iris$Sepal.Length, iris$Petal.Length,  
     pch = 18, cex = 2, col = rgb(45, 67,121, maxColorValue = 255))

plot1

修改透明度:

代码语言:javascript复制
plot(x = iris$Sepal.Length, iris$Petal.Length,  
     pch = 18, cex = 2, col = rgb(45, 67,121, 100, maxColorValue = 255))

plot2

0 人点赞