R语言 用ggplot为多线图添加图例

R语言 用ggplot为多线图添加图例

在这篇文章中,我们将看到如何用R编程语言中的ggplot为多线图添加图例。

对于一个包含多个线段图的图,如果使用col属性,默认会创建一个图例。所有对线段图的外观所做的改变也会反映在图例中。

语法: ggplot(df, aes(x, y, col=”要区分的列的名称”))

让我们先来看看曲线在默认情况下是如何显示的。

例子: 默认图

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()

输出

在R语言中用ggplot为多线图添加图例

对线条所做的各种改变也会出现在图例中,让我们来看看是怎样的。

改变颜色

默认情况下,要改变颜色,将产生上述图谱,现在假设我们要手动为线条添加颜色,为此可以使用任何一个给定的函数–scale_color_manual(), scale_color_brewer(), 和scale_color_grey()。

例子:改变线条的颜色

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()+
  scale_color_manual(values=c("green","yellow","red","grey"))

输出

在R语言中用ggplot为多线图添加图例

改变线条粗细

为此,尺寸属性被用于一个特定的值。这些变化也将反映在图例中。

例子

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语言中用ggplot为多线图添加图例

改变线型

图形的线型可以通过任何一个给定的函数-scale_linetype_manual(),或者通过使用linetype关键字默认改变。

例子

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, group=fun, color=fun, linetype=fun))+
geom_line(size=1)+
scale_linetype_manual(values = c("solid","dotted","dashed","twodash"))+
scale_color_manual(values=c("red","green","blue","black"))

输出

在R语言中用ggplot为多线图添加图例

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程