R语言 如何使用ggplot2抑制垂直网格线
在这篇文章中,我们将讨论使用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()
输出
方法1:使用scale_x_continuous()函数
scale_x_continuous() 函数可以用来处理垂直网格线的外观和吸引力。这个函数的break属性可以设置为NULL,以便从图中删除它们。
语法: scale_x_continuous(breaks=NULL)
例子。使用 scale_x_continuous() 抑制垂直网格线
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_x_continuous(breaks=NULL)
方法2:使用 ggExtra 包
这个包有一个叫做removeGrid()的函数,顾名思义就是用来抑制绘图的网格线。
语法: removeGrid(x, y)
其中, 该函数的y属性应设置为false,以便特别是抑制垂直网格线。
例子:使用 ggExtra 抑制垂直网格线
library("ggplot2")
library("ggExtra")
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()+
removeGrid(y=FALSE)
输出