R语言做双坐标图的代码附解释
时间: 2023-12-16 19:04:53 浏览: 28
当需要在同一张图中展示两个不同范围的数据时,可以使用双坐标图。在R语言中,可以使用ggplot2包来创建双坐标图。以下是一个简单的例子代码及解释:
```R
# 加载ggplot2包
library(ggplot2)
# 创建数据
x <- 1:10
y1 <- x^2
y2 <- x*10
# 创建第一个坐标系
p1 <- ggplot() +
geom_line(aes(x, y1), color = "red") +
scale_y_continuous(name = "y1", sec.axis = sec_axis(~./10, name = "y2"))
# 创建第二个坐标系
p2 <- ggplot() +
geom_line(aes(x, y2), color = "blue") +
scale_y_continuous(name = "y2", sec.axis = sec_axis(~.*10, name = "y1"))
# 合并两个坐标系
p1 + p2
```
解释:
首先,我们加载了ggplot2包。然后,我们创建了两组数据,y1和y2,用于展示在同一张图中。接下来,我们创建了两个单独的坐标系p1和p2,分别用于展示y1和y2。
在创建p1时,我们使用了“red”颜色创建了一条红色的线条,用于展示y1。我们还使用了scale_y_continuous函数来定义y1轴标签和y2轴标签,其中sec.axis参数用于创建辅助轴。
在创建p2时,我们使用了“blue”颜色创建了一条蓝色的线条,用于展示y2。与p1一样,我们使用了scale_y_continuous函数来定义y2轴标签和y1轴标签,但是我们将sec.axis参数的函数改为了~.*10,用于创建与p1中的辅助轴相对应的主轴。
最后,我们使用“+”符号将p1和p2合并到同一张图中。这样,我们就创建了一张双坐标图,用于展示y1和y2。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)