本文由阿童木根据实践经验而整理,希望对大家有帮助。
原创微文,欢迎转发转载。
用R语言ggplot2包ggplot函数画散点图,然后接着将点挨个连到一起得到折线图。R语言中X轴名称默认是按照字符顺序排序,如果这种排序方式不是我们所需要的,可以通过将X轴名称设为因子的方式自定义排序。
代码:
x=c("0h", "4h", "8h", "12h", "16h")
y=c(10, 20, 30, 40, 50)
data=data.frame(x, y)
data
图1
二、画散点图
library(ggplot2)
ggplot(data, aes(x=x, y=y)) + geom_point(color="red") +
labs(x="time", y="number", title="up, see me") +
theme(panel.grid=element_blank(), panel.background=element_rect(color='black', fill='transparent')) +
theme(plot.title = element_text(hjust = 0.5)) +
geom_line(color="green")
尽管在ggplot里添加的geom_line()参数,但是并没有得到散点之间的连线。查看软件提示:每个组只有一个观测值,需要校正group。接下来修改geom_line()参数重新画。
代码:
ggplot(data, aes(x=x, y=y)) + geom_point(color="red") +
labs(x="time", y="number", title="up, see me") +
theme(panel.grid=element_blank(), panel.background=element_rect(color='black', fill='transparent')) +
theme(plot.title = element_text(hjust = 0.5)) +
geom_line(aes(group=""), color="green")
图4
使用参数:geom_line(aes(group=""),成功加上了折线。但是观察到X轴的顺序并不是我们”想要的顺序”(输入数据表种的顺序)。
四、设置X轴排序
代码:
data$x=factor(data$x, levels=c("0h", "4h", "8h", "12h", "16h"))
ggplot(data, aes(x=x, y=y)) + geom_point(color="red") +
labs(x="time", y="number", title="up, see me") +
theme(panel.grid=element_blank(), panel.background=element_rect(color='black', fill='transparent')) +
theme(plot.title = element_text(hjust = 0.5)) +
geom_line(aes(group=""), color="green")
图5
利用factor(x, levels=c())将一个向量的值设为因子,再次画图解决顺序的问题。
你可能还喜欢
1 技术贴 | 16S专题 | 简单介绍如何用自己的笔记本处理高通量16S数据
2 技术贴 | 宏基因组专题 | 组装工具盘点和比较
3 技术贴 | R语言菌群Alpha多样性分析和绘图
4 技术贴 | 宏转录组专题 | DDBJ数据库:宏转录组测序数据下载
5 技术贴 | R语言pheatmap聚类分析和热图
微生态科研学术群期待与您交流更多微生态科研问题
(联系微生态老师即可申请入群)
了解更多菌群知识,请关注“微生态”。