ggplot 扩展图例颜色条
ggplot extend legend colorbar
我正在尝试在 ggplot 上制作热图。我有一个类似于下面的数据框
wday hour quant
Mon 0 1.2346944
Tue 0 0.8418860
Wed 0 0.8904375
Thu 0 0.8906767
Fri 0 1.0761553
Sat 0 2.1095617
Sun 0 2.1421696
Mon 1 2.9178615
Tue 1 0.7481875
Wed 1 0.6200556
Thu 1 0.5530000
Fri 1 0.3852611
Sat 1 0.4791192
Sun 1 1.0958043
Mon 2 2.8627222
Tue 2 0.7989769
Wed 2 0.4209105
Thu 2 0.6512810
Fri 2 0.5047176
Sat 2 0.6544059
Sun 2 0.8167846
我的代码是:
ggplot(df , aes(x = hour, y = wday)) +
geom_raster(aes(fill = quant), interpolate=TRUE) +
scale_fill_distiller(palette = "Spectral") +
theme(legend.position = "bottom")
它呈现出这样的图形:
可以看到图例的colorbar确实收缩了,请问如何横向延长图例使其变宽?
legend.key.width
就是你想要的。例如,
ggplot(df , aes(x = hour, y = wday)) +
geom_raster(aes(fill = quant), interpolate = TRUE) +
scale_fill_distiller(palette = "Spectral") +
theme(legend.position = "bottom", legend.key.width = unit(2.5, "cm"))
我正在尝试在 ggplot 上制作热图。我有一个类似于下面的数据框
wday hour quant
Mon 0 1.2346944
Tue 0 0.8418860
Wed 0 0.8904375
Thu 0 0.8906767
Fri 0 1.0761553
Sat 0 2.1095617
Sun 0 2.1421696
Mon 1 2.9178615
Tue 1 0.7481875
Wed 1 0.6200556
Thu 1 0.5530000
Fri 1 0.3852611
Sat 1 0.4791192
Sun 1 1.0958043
Mon 2 2.8627222
Tue 2 0.7989769
Wed 2 0.4209105
Thu 2 0.6512810
Fri 2 0.5047176
Sat 2 0.6544059
Sun 2 0.8167846
我的代码是:
ggplot(df , aes(x = hour, y = wday)) +
geom_raster(aes(fill = quant), interpolate=TRUE) +
scale_fill_distiller(palette = "Spectral") +
theme(legend.position = "bottom")
它呈现出这样的图形:
可以看到图例的colorbar确实收缩了,请问如何横向延长图例使其变宽?
legend.key.width
就是你想要的。例如,
ggplot(df , aes(x = hour, y = wday)) +
geom_raster(aes(fill = quant), interpolate = TRUE) +
scale_fill_distiller(palette = "Spectral") +
theme(legend.position = "bottom", legend.key.width = unit(2.5, "cm"))