如何调整levelplot中colorbar/colorkeys位置以避免与Longitude标签重叠
解决Levelplot中Colorbar与Longitude标签重叠的问题
我之前也碰到过这个困扰,其实只需要在colorkey的参数设置里做些小调整,就能让colorbar向下移动,避开x轴的Longitude标签。下面是两种可行的解决方法:
方法一:调整Colorbar的顶部边距
直接在colorkey的配置列表里加入margin参数,给colorbar的顶部留出足够空间,它就会自动下移远离x轴标签:
library(raster) library(rasterVis) ras <- list.files("/filepath/", pattern = "\\.tif$", full=TRUE) s <- stack(ras) levelplot(s, colorkey = list(space ="bottom", height=1, width=1, # 顺序为:上、右、下、左,给顶部增加5个单位边距 margin = c(5, 0, 0, 0)), names.attr=c("2011","2012","2013", "2014") )
你可以根据实际重叠程度调整margin里的第一个数值(比如改成3或7),直到标签和colorbar的间距看起来舒服为止。
方法二:额外增加绘图区域底部空白
如果第一种方法还不够,你可以再通过par.settings调整整个绘图区域的底部padding,进一步拉开两者的距离:
library(raster) library(rasterVis) ras <- list.files("/filepath/", pattern = "\\.tif$", full=TRUE) s <- stack(ras) levelplot(s, colorkey = list(space ="bottom", height=1, width=1, margin = c(5, 0, 0, 0)), names.attr=c("2011","2012","2013", "2014"), # 增加底部空白,给x轴标签和colorbar更多空间 par.settings = list(layout.heights = list(bottom.padding = 2)) )
这里的bottom.padding数值也可以按需调整,数值越大,底部的空白区域就越多。
内容的提问来源于stack exchange,提问作者Lalantra
相关产品推荐
相关产品推荐

