如何去除R中使用ggplot2创建的图表中点与坐标轴之间的额外边距?


在使用ggplot包创建的图表中,图表四周存在额外的区域,占用额外的空间,因此我们可能希望通过去除该额外边距区域来消除该空间。这可以通过使用`scale_x_continuous`和`scale_y_continuous`函数将两个坐标轴的比例设置为零来实现。

考虑以下数据框:

示例

 在线演示

set.seed(151)
x<-rnorm(20,5,1)
y<-rnorm(20,5,2)
df<-data.frame(x,y)
df

输出

      x         y
1  4.948461 2.255857
2  5.765737 1.726474
3  4.853260 4.280697
4  4.886814 7.402230
5  4.604489 3.708252
6  5.782276 3.978782
7  3.602522 3.801754
8  3.981162 6.091206
9  5.229476 4.017412
10 5.672173 5.383071
11 4.515448 3.882945
12 5.560609 6.845399
13 5.066156 7.307996
14 3.650124 2.255179
15 4.757084 7.580363
16 3.763259 7.309804
17 3.525322 7.891359
18 7.437159 5.522026
19 5.673526 8.858292
20 5.310040 3.800228

加载ggplot2包并在x和y之间创建散点图:

示例

library(ggplot2)
ggplot(df,aes(x,y))+geom_point()

输出

通过排除额外边距区域在x和y之间创建散点图:

示例

ggplot(df,aes(x,y))+geom_point()+scale_x_continuous(expand=c(0,0))+scale_y_continuous(expand=c(0,0))

输出

更新于:2020年10月19日

1K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.