R语言 使用GGPLOT2设置线条的不同透明度

R语言 使用GGPLOT2设置线条的不同透明度

在这篇文章中,我们将讨论如何使用R编程语言中的GGPLOT2使线段的透明度不同。

首先,让我们绘制一个折线图,这样就可以看出其中的差别。

library("ggplot2")
  
  
function1<- function(x){x**2}
function2<-function(x){x**3}
function3<-function(x){x/2}
function4<-function(x){2*(x**3)+(x**2)-(x/2)}
  
df=data.frame(x = -2:2,
              values = c(function1(-2:2),
                       function2(-2:2),
                       function3(-2:2),
                       function4(-2:2)),
              fun = rep(c("function1","function2",
                        "function3","function4"))
              )
  
ggplot(df,aes(x,values,col=fun))+geom_line(size=3)

输出

在R语言中使用GGPLOT2设置线条的不同透明度

所有线条的透明度相同

让我们首先把所有线条的透明度改为相同的值,为此使用了alpha参数。它的最大值是1,这使得它成为一条实线。要使它成为半透明的,请提供小于1的值。

library("ggplot2")
  
function1<- function(x){x**2}
function2<-function(x){x**3}
function3<-function(x){x/2}
function4<-function(x){2*(x**3)+(x**2)-(x/2)}
  
df=data.frame(x=-2:2,
              values=c(function1(-2:2),
                       function2(-2:2),
                       function3(-2:2),
                       function4(-2:2)),
              fun=rep(c("function1","function2",
                        "function3","function4"))
)
  
ggplot(df,aes(x,values,col=fun))+geom_line(size=3, alpha=0.6)

输出

在R语言中使用GGPLOT2设置线条的不同透明度

手动定义透明度

要把每一行的透明度改为其他值,可以通过数据集的属性来区分透明度的值,然后把带有每个透明度级别的值的向量传给scale_alpha_manual()函数。

scale_alpha_manual()函数手动设置alpha值。

语法: scale_alpha_manual(values)

代码

library("ggplot2")
  
function1<- function(x){x**2}
function2<-function(x){x**3}
function3<-function(x){x/2}
function4<-function(x){2*(x**3)+(x**2)-(x/2)}
  
df=data.frame(x=-2:2,
              values=c(function1(-2:2),
                       function2(-2:2),
                       function3(-2:2),
                       function4(-2:2)),
              fun=rep(c("function1","function2",
                        "function3","function4"))
)
  
ggplot(df,aes(x,values,col=fun))+geom_line(size=3, aes(alpha=fun))+
  scale_alpha_manual(values=c(0.3,0.2,0.7,1)) 

输出

在R语言中使用GGPLOT2设置线条的不同透明度

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程