如何固定openair包polarPlot()的颜色色阶以适配多图生成与动画制作需求
openair包polarPlot()固定色阶解决方案
要固定openair包polarPlot()的颜色色阶,实现多张独立出图的色阶完全统一,适配动画制作需求,操作方法如下:
- 首先预计算全部待绘图数据中目标污染物的浓度范围,作为所有图的公共色阶上下限
- 每次调用
polarPlot()时传入limits参数绑定上述公共范围,即可保证所有图的颜色和浓度的对应关系完全一致
代码示例
library(openair) library(dplyr) library(lubridate) # 预计算全局nox污染物浓度范围,固定色阶上下限,na.rm = TRUE可自动跳过缺测值 nox_range <- range(mydata$nox, na.rm = TRUE) # 输出1999年极地图,使用固定色阶 polarPlot(filter(mydata, year(date) == 1999), pollutant = "nox", limits = nox_range) # 输出2004年极地图,使用相同固定色阶 polarPlot(filter(mydata, year(date) == 2004), pollutant = "nox", limits = nox_range)
补充说明
如果需要完全固定色阶的分段刻度,可以额外传入breaks参数手动指定分割点,进一步保证所有图的色条样式完全统一;如果需要固定配色方案,也可以搭配col参数指定固定的配色序列。
效果参考

内容的提问来源于stack exchange,提问作者Thomas Speidel
相关产品推荐
相关产品推荐

