ggplot2如何将图例颜色条的分段刻度改为完整连续线条
解决方案
可以实现该效果,你只需要调整guide_colorbar的ticks.length参数,该参数控制刻度线的绘制长度,将其设置为和颜色条宽度相等的数值,原本的边缘短刻度就会延伸为贯穿整个颜色条的完整线条。
修改后的可运行代码如下:
library(ggplot2) library(grid) # unit函数需要依赖grid包 df <- data.frame(x = 1, y = 1:3, z = 1:3) ggplot(df, aes(x, y)) + geom_raster(aes(fill = z)) + scale_fill_continuous(guide = guide_colorbar( ticks.colour = "red", ticks.linewidth = 2, barwidth = 2, ticks.length = unit(2, "lines") # 新增参数,长度和barwidth的数值、单位匹配即可 ) )
如果你的颜色条宽度用了其他单位(比如cm/pt),只要把ticks.length的数值、单位和barwidth设置为完全一致即可达到预期效果。
内容的提问来源于stack exchange,提问作者rafa.pereira
相关产品推荐
相关产品推荐

