R语言ggplot2做双Y轴的一个简单小例子
参考链接
- 1、https://ggplot2.tidyverse.org/reference/sec_axis.html
- 2、https://www.r-graph-gallery.com/line-chart-dual-Y-axis-ggplot2.html
- 3、https://github.com/alex-koiter/Weather-and-Climate-figures
- 4、https://twitter.com/Alex_Koiter/status/1312458166496501760/photo/1
代码主要来自于链接3
首先是准备数据的代码
这部分代码大家可以自己试着运行一下,我用R4.0.3版本遇到的报错,没有找到解决办法,换成R4.1.0之后运行成功了
我将示例数据保存下来了,如果以上代码没有运行成功,可以在公众号获取数据,保存数据的代码
现在用20211121.Rdata 作为开始
首先是读取数据集
第一个图是用到df_normal这个数据集
首先是一个柱形图,但这里的柱形图是通过
geom_segment()
函数实现的
作图
对x轴操作的代码
这里涉及到时间格式的数据如何操作
接下来就是对Y轴操作,添加双坐标轴的代码
这里有一个小知识点是如果要用摄氏度那个符号,他的写法是
expression("Temperature " ( degree*C))
添加拟合曲线的代码
最后是添加了一个文本注释
文章开头提到的参考链接3里还有3幅图的代码,大家可以自己试着重复一下