如何使用 ggplot2 删除 R 中的图例标题?
有时,图例键足以显示它们应该描述的内容。因此,在这种情况下,可以删除图例标题。在本文中,我们将讨论如何使用 R 编程语言中的 ggplot2 删除图例标题。
让我们首先绘制一个带有图例标题的常规图:
R
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
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_discrete(name="")
R
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()+
theme(legend.title=element_blank())
输出:
方法 1:使用 scale_color_discrete()
scale_color_discrete()函数处理图例美学。要删除标题,将其 name 属性设置为空或保留为黑色,这使得它不会出现在最终图中。
Syntax: scale_color_discrete(name)
示例:使用 scale_color_discrete() 删除图例标题。
电阻
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_discrete(name="")
输出:
方法二:使用theme()
theme()函数是自定义绘图的非数据组件的强大方法:即标题、标签、字体、背景、网格线和图例。要删除图例标题,请将其legend.title 属性设置为element_blank()。
Syntax: theme(legend.title= element_blank())
示例:使用 theme() 删除图例标题。
电阻
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()+
theme(legend.title=element_blank())
输出: