为什么coord_equal不能按预期的方式工作?

Oli*_*ver 6 r ggplot2

根据ggplot2 上的这个参考页面,以下命令应该给出x和y的相等纵横比(1:1).

qplot(mpg, wt, data = mtcars) + coord_equal(ratio = 1) 
Run Code Online (Sandbox Code Playgroud)

但是,当我输入它时,我看到了这一点. 在此输入图像描述

有谁知道这是什么问题?

编辑:

+coord_equal()但是,如果没有,我可以获得1:1的宽高比.但是,只要我在右侧添加图例,1:1方面就会发生变化.提供的建议过于繁琐,无法达到预期效果.正如所建议的那样,我已经向github/ggplot2提交了一张票.

Das*_*son 8

不妨把我的评论变成答案.

coord_equal(ratio = 1)所做的是确保两个轴上相等的长度代表相同的单位变化.所以两个轴的1cm = 5个单位(例如 - 转换率可能不正确,但想法是相同的).由于x轴变化较大,因此会像这样碾压.coord_equal如果希望y轴更加拉伸,可以添加ylim参数.


Oli*_*ver 5

在 github/ggplot2 票证备案之后。温斯顿帮我找到了一个简洁的解决方案:

qplot(mpg,wt,data=mtcars, shape="carb") + theme(aspect.ratio=1)
Run Code Online (Sandbox Code Playgroud)

此外,ggplot2 0.8 到 0.9 之间似乎有一些行为变化,原始文档可能已经过时。