在ggplot中更改变量名称的字体大小

时间:2019-04-10 16:41:01

标签: r ggplot2

在ggplot实现的图形中,我无法增加变量名称的字体大小。

我试图将这些代码包含在ggplot代码中,但未成功:

theme(text = element_text(size=20))
theme(axis.text=element_text(size=20))
theme(axis.title=element_text(size=14))
theme_grey(base_size = 20)
geom_text(size=20)

我的代码是:

library(ggplot2)
library(reshape2)
dataplot <- read.csv("/Documents/R.csv",header=T,sep=";")
dataPlotMelt <- melt(data = dataplot, id.vars = c("variable"),variable.name = "Method",value.name = "SMD")
varNames <- as.character(dataplot$variable)
dataPlotMelt$variable <- factor(dataPlotMelt$variable,levels = varNames)
ggplot(data=dataPlotMelt,mapping=aes(x=variable,y=SMD,group=Method, color=Method))+
  ylab("Standardizedmeandifference(%)")+
  xlab("") +
  geom_point(aes(shape=Method),size=2) +
  geom_hline(yintercept=15,color="black",size=0.1,linetype="dashed") + 
  geom_hline(yintercept=-15,color="black",size=0.1,linetype="dashed") + 
  coord_flip() + 
  theme(axis.text.x=element_blank()) +
  scale_y_continuous(breaks=c(-65,-15,15,105)) + 
  theme_bw() + 
  theme(legend.text=element_text(size=12)) +
  theme(legend.title=element_blank(),legend.key=element_blank()) +
  scale_colour_manual(values=c("grey","black"))

我想增加图形中变量名称的字体大小,并且还要增加文本“标准化平均差异(%)”并删除yintercept和ybreak两侧的垂直线< / p>

enter image description here

1 个答案:

答案 0 :(得分:0)

new graphic 谢谢理查德给我解决方案。 如您所建议,我在theme之后使用了theme_bw

我也设法通过命令theme(panel.grid.minor = element_blank())抑制了无用的垂直线

这是ggplot的新代码:

ggplot(data = dataPlotMelt, mapping = aes(x = variable, y = SMD,group = Method, 
  color = Method)) +
  ylab("Standardized mean difference (%)") + xlab("") +
  geom_point(aes(shape = Method),size=2) +
  geom_hline(yintercept = 15, color = "black", size = 0.1, linetype = "dashed") + 
  geom_hline(yintercept = -15, color = "black", size = 0.1, linetype = "dashed") +
  coord_flip() + 
  theme(axis.text.x = element_blank()) +
  scale_y_continuous(breaks=c(-65,-15,0,15,105)) +
  theme_bw() + theme(legend.text = element_text(size=13)) + 
  scale_colour_manual(values= c("grey","black")) +
  theme(axis.text.y = element_text(size=12)) + 
  theme(axis.title.x = element_text(size=13)) + 
  theme(panel.grid.minor = element_blank()) + 
  theme(legend.title = element_blank(), legend.key=element_blank())