在使用ggplot2初步绘制(
ggplot2|详解八大基本绘图要素
)出需要展示的图形后,还需要对标题,坐标轴(
ggplot2|theme主题设置,详解绘图优化-“精雕细琢”
)和legend(
ggplot2 |legend参数设置,图形精雕细琢
)上的对象进行一系列的设置,包括但不限于名称更改,颜色,大小,位置和角度的调整。
本文针对性的介绍下如何对标题,坐标轴和legend进行修改和设置,算是之前几篇推文的一些补充。
一 载入R包 数据
为方便展示,使用ggplot2内置的iris数据集
library(ggplot2)
p <- ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width))+
geom_point(aes(color=Species))
p
复制
本文会分别介绍图中红色标记部分的修改和设置方法。
二 标题设置
可以通过
labs
函数添加图片标题 以及 subtitle ,caption ;而后通过theme来设置字体的大小,颜色,位置和角度等。
注意theme中对应的更改plot.title ,plot.caption 和 plot.subtitle
p1 <- p + labs(title="学习ggplot2可视化",
subtitle = "熟能生巧",
caption = "生信补给站") +
theme(plot.title=element_text(face="bold.italic", #字体
color="steelblue", #颜色
size=24, #大小
hjust=0.5, #位置
vjust=0.5,
angle=360), # 角度
plot.caption=element_text(face="bold",color="blue",size=20))
p1
复制
三 坐标轴设置
3.1 设置坐标轴
使用labs函数 ,其中x y 即为对应的坐标名字;
p2 <- p1 + labs(x="X轴",y = "这是Y轴",title = "生信补给站")
p2
复制
3.2 设置坐标大小,颜色
根据实际情况设置大小,颜色和倾斜角度可以更清晰的展示结果
p2 + theme(axis.title.x=element_text(vjust=1,
size=20), # X axis title
axis.title.y=element_text(size=10,
color = "blue"), # Y axis title
axis.text.x=element_text(size=10,
angle = 45,
color = "red",
vjust=.5), # X axis text
axis.text.y=element_text(size=10)) # Y axis text
复制
四 图例设置
legend 可以使用guide函数或者scale函数进行修改,这里分别进行一下介绍。
4.1 根据guide修改
p3 <- p2 + guides(color=guide_legend(title = "shape change Legend"))
p3
复制
注意这里使用color=guide_legend ,和aes对应 。
ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width))+
geom_point(aes(shape=Species))+
guides(shape=guide_legend(title = "shape change legend"))
复制
4.2 根据scale修改
p4 <- p2 + scale_colour_discrete(name="scale change Legend")
p4
复制
#综合一下
ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width))+
geom_point(aes(color=Species,shape=Species)) +
scale_colour_discrete(name="color legend") +
guides(shape=guide_legend(title = "shape legend"))
复制
4.3 更改标签名称
4.3.1 使用scale 函数对标签名称进行更改
p5 <- p2 + scale_color_discrete(name="scale change \n Legend",
breaks=c("setosa" ,"versicolor","virginica"),