|
|
1
pogibas
7 年前
我们必须绘制两个不同的图例,但要将它们彼此靠近(使用
legend.spacing.y中的负值
requires ggplot2_3.0.0)。这种方法产生了另一个问题-两个图例不对齐,因此我们必须绘制另一组钻石(较大的钻石与非钻石匹配,但不可见
alpha=0
)。
ggplot()。+
几何点(数据=df1,
aes(lat1、long1、size=val1、fill=val1)
形状=21,α=0.6)+
几何点(数据=df2,
aes(lat2,long2,color=“val2”),
形状=17,尺寸=3)+
几何点(数据=df2,
aes(lat2,long2,color=“val2”),
形状=17,尺寸=11.5,α=0)+
缩放\大小\连续(范围=C(2,12),中断=漂亮中断(4))。+
比例填充蒸馏器(方向=-1,palete=“rdylbu”,breaks=pretty_breaks(4))。+
缩放\u颜色\u手动(values=“black”,name=“value\n”)。+
实验室(填充=空,
大小=空)+
参考线(fill=guide_legend(),
尺寸=导向槽图例(),
颜色=参考线图例(顺序=1))。+
主题_minimal()。+
主题(legend.spacing.y=单位(-0.4,“cm”))

这种方法产生了另一个问题-两个传说不一致,因此我们必须绘制另一组钻石(较大的钻石匹配非钻石,但不可见alpha = 0)
ggplot() +
geom_point(data = df1,
aes(lat1, long1, size = val1, fill = val1),
shape = 21, alpha = 0.6) +
geom_point(data = df2,
aes(lat2, long2, color = "val2"),
shape = 17, size = 3) +
geom_point(data = df2,
aes(lat2, long2, color = "val2"),
shape = 17, size = 11.5, alpha = 0) +
scale_size_continuous(range = c(2, 12), breaks = pretty_breaks(4)) +
scale_fill_distiller(direction = -1, palette = "RdYlBu", breaks = pretty_breaks(4)) +
scale_color_manual(values = "black", name = "Value\n") +
labs(fill = NULL,
size = NULL) +
guides(fill = guide_legend(),
size = guide_legend(),
color = guide_legend(order = 1)) +
theme_minimal() +
theme(legend.spacing.y = unit(-0.4, "cm"))

|