使用R中的levelplot可视化负面/正面数据

时间:2015-02-26 21:30:39

标签: r data-visualization levelplot

我需要您对如何可视化/映射跨越负值和正值的数据有所了解。我有6个栅格堆叠在一起(s),随后将通过R中的levelplot函数绘制。以下是每个maxmin值{1}}。

raster

目前,我可以通过以下方式制作我的地图:

39.2887, 53.09207  (min, max) # r1
-32.4956, -27.25534  (min, max)# r2   
-14.37683, -11.37742  (min, max)# r3    
9.512934, 13.60197  (min, max)# r4    
-4.993901, -1.851784  (min, max)# r5    
-8.190711, -5.104764  (min, max)# r6

注意:我需要一个通用于所有栅格的单一颜色键。

问题:对于范围较小的栅格,细胞之间的差异很难传达 - 地图上的信息不能很好地显示。如何使用具有如此大的整体范围的library(raster) library(rasterVis) library(colorRamp) s <- stack(r1,r2,r3,r4,r5,r6) themes2 <- colorRampPalette(c("darkred", "red3", "orange", "yellow", "lightskyblue", "royalblue3", "darkblue"))(19) myat =unique(seq(floor(min(s)) ,ceiling(max(s)),length.out=20)) myat=round(myat,digits = 0)# #themes <- rasterTheme(region=rev(brewer.pal(11,'RdYlBu'))) myColorkey <- list(at=myat,space = "right",labels=list(cex=1,at=myat)) if (dev.cur() == 1) x11(width=18,height=18) levelplot(s, layout=c(3, 2), index.cond=list(c(1, 3, 5, 2, 4, 6)),col.regions=themes2, margin=FALSE,xlab=NULL,at =unique(seq(floor(min(s)) ,ceiling(max(s)),length.out=20)), par.strip.text=list(cex=0),colorkey=myColorkey,scales=list(alternating=F)) 来可视化此类数据?

您可以生成6个栅格,其值在上面显示的范围内,以便为我提供更多线索。

感谢您的帮助! colorkey不需要是红色到蓝色。像"The Default Rainbow Palette"这样的东西会。

enter image description here&#34;

我需要一个用于所有这些栅格的单一共享颜色键。目前,具有较小细胞范围的光栅显示出非常小的变化。

1 个答案:

答案 0 :(得分:0)

在我看来,你有两个选择:

  1. 为每个图表使用不同的密钥。
  2. 重新缩放数据以创建通用比例。
  3. 因为您需要一个颜色键,所以您应该重新调整数据。虽然this document是关于时间序列的,但它对此问题提供了很好的建议。