最近在准备文章出图,本人对ggplot使用不是很深入,仅总结一些个人的经验,希望对大家有所帮助。
先解释theme中的几个概念:
vjust:控制标题(或标签)和绘图之间的垂直间距;
hjust:控制水平间距。将其设置为0.5将标题居中;
face:设置字体(“plain”,“italic”,“bold”,“bold.italic”);
angle:设置角度;
size:字体或线条的磅数;
color:颜色设置;
lineheight:线高。
接下来看相关的一些设置参数。
1 标题相关设置:
theme(plot.title=element_text(size=20,
face="bold", color="skyblue", #颜色字体
hjust=0.5, #调整位置,正中间
lineheight=1.2))
另外可以设置子标题:将plot.title 改成plot.subtitle即可。
2 坐标轴的相关设置:
theme(axis.title.x=element_text(vjust=1, size=20), # X 轴标题设置
axis.title.y=element_text(size=10,color = "blue"), # Y 轴标题设置
axis.text.x=element_text(size=10,angle = 45,color = "red", vjust=.5), # X 轴文本设置
axis.text.y=element_text(size=10)) # Y轴文本设置
3 图例的相关设置:
theme(legend.title = element_text(size=15, color = "firebrick"), #图例标题的相关设置
当设置为theme(legend.title=element_blank())时,表示删除图例的标题。
legend.text = element_text(size=10), ### 图例文本的设置
legend.position=c(0.95, 0.05),###图例位置,可设置坐标值,也可是'top','bottom','left','right'。默认为right
legend.key=element_rect(fill='green')) ### 图例的符号,设置后填充的形状可与绘图对象设置的形状保持一致。file表示填充色。
legend.background=element_rect(colour="purple",fill="pink",size=3,linetype="dashed")
###图例颜色设置矩形区域设置
图例形状大小的设置: + guides(colour = guide_legend(override.aes = list(size=5)))
去掉Legend两种方法:1,+NoLegend() 2, +theme(legend.position='none')
4 背景的相关设置:
theme(panel.background = element_rect(fill = 'grey80'), ###绘图区背景色填充
plot.background=element_rect(fill="khaki"), ###画板背景色填充
plot.margin = unit(c(3, 2, 1, 1), "cm")) + ### 设置绘图区域距离边的据类,上,右,下,左
删除所有背景色和网格线:
1)theme(panel.grid.major =element_blank(), panel.grid.minor = element_blank(),
+ panel.background = element_blank(),axis.line = element_line(colour = "black"))
2)theme_bw() +
+ theme(panel.border = element_blank(),panel.grid.major = element_blank(),
+ panel.grid.minor = element_blank(),axis.line = element_line(colour = "black"))
5.添加标题
labs(x='',y='',title="Modified Background", subtitle="Change Plot Margin")
6.自定义颜色与形状,大小等:
#自定义线条或点的颜色--scale_color_manual()
#自定义线条类型--scale_linetype_manual()
#自定义点的形状--scale_shape_manual()
#自定义点的大小或线条的宽度--scale_size_manual()
#自定义透明度--scale_alpha_manual()
#自定义填充色--scale_fill_manual(values = color_bar) ####此处values为颜色列表
参考:
https://www.jianshu.com/p/3ec860e87832
https://www.cnblogs.com/emanlee/p/5373649.html
https://blog.csdn.net/aspirinvagrant/article/details/39672635