不同图表的图例上的比例相同

时间:2013-01-13 16:47:03

标签: r ggplot2

我绘制了两个图表但是想要在比较中使用相同比例的点

geofirmen<-data.frame(lon=c(1,2,3), lat=c(1,2,3), freqplz=c(5,10,15))
ggplot(data= geofirmen) + geom_point(aes(x = lon, y = lat, size=freqplz, alpha=.7), colour = "dodgerblue4")

geofirmen<-data.frame(lon=c(1,2,3), lat=c(1,2,3), freqplz=c(5,10,20))
ggplot(data= geofirmen) + geom_point(aes(x = lon, y = lat, size=freqplz, alpha=.7), colour = "dodgerblue4")

looks same but is smaller looks same but is bigger

我希望两者都有更大规模的传奇规模。 注意,图表的比例不得改变,因为我描绘了地理地图,但freqplz的大小必须相同,值为10等。 这是如何工作的?

1 个答案:

答案 0 :(得分:1)

如果您确实需要两个单独的图表,那么您可以对两个图表使用相同的scale_size()定义(添加到ggplot()个命令),您可以在其中定义breaks=并设置{{ 1}}包含两个图的值。

limits=

另一种解决方案是将所有数据放在一个包含分组列的数据框中(示例数据中为+ scale_size(breaks=c(5,10,15,20),limits=c(0,20)) )。然后添加group以为每个级别制作构面。在这种情况下,只有一个传奇。 facet_wrap()用于确保coord_fixed()x轴之间的固定宽高比。

y

enter image description here