标签: levelplot

在r中的levelplot中锁定颜色键

我正在使用水平图来显示矩阵,下面的图表.虽然两个图都使用相同的col.regions,但颜色键是不同的.我们如何锁定(或设置)两个水平图的颜色键?我想要两个图的相同颜色键(0到60).

在此输入图像描述

在此输入图像描述

r levelplot

4
推荐指数
1
解决办法
2926
查看次数

R代码不保存绘图图像

以下代码生成一个图像:

library(latticeExtra)
x=runif(40)
y=runif(40)
z=runif(40)
png(filename=paste(i,".png",sep=""))
levelplot(z ~ x + y, panel = panel.levelplot.points, col.regions = rainbow(50))
dev.off()
Run Code Online (Sandbox Code Playgroud)

但是下面的代码没有.为什么?

library(latticeExtra)
for(i in seq(1,5)) {
    x=runif(40)
    y=runif(40)
    z=runif(40)
    png(filename=paste(i,".png",sep=""))
    levelplot(z ~ x + y, panel = panel.levelplot.points, col.regions = rainbow(50))
    dev.off()
}
Run Code Online (Sandbox Code Playgroud)

plot png r levelplot

4
推荐指数
1
解决办法
2260
查看次数

如何使用R中的levelplot为图例比例添加标题?

我想为这个情节添加一个标题:

     library(lattice)
     x = 1:10
     y = rep(x,rep(10,10))
     x = rep(x,rep(10))
     z = x+y  
     levelplot(z~x*y,  
               colorkey = list(labels = list(cex=1,font=2,col="brown"), height=1, width=1.4),
               main = list('b',side=1,line=0.5))
Run Code Online (Sandbox Code Playgroud)

哪个产生:

在此输入图像描述

plot r levelplot

4
推荐指数
1
解决办法
4373
查看次数

Levelplot颜色键 - 范围和极端

在R中是否可以创建一个类似下面的颜色键?(这个来自软件网格分析和显示系统 - Grads).

在此输入图像描述

我无法在R中重现两个功能:

  1. 序列是非线性的,但它显示为好像
  2. 大于200的值为灰色/小于0的值为白色

我正在使用rastervis的levelplot,它使用晶格级别图来绘制栅格:

require(raster)
require(rasterVis)

set.seed(200)

X = seq(-40,0,by=1)
Y = seq(-60,-40,by=1)
grid = expand.grid(list(X=X,Y=Y))
Z = rnorm(nrow(grid),mean=10,sd=100)

data = data.frame(grid,Z)
r = rasterFromXYZ(data)
mapTheme <- rasterTheme(region=c('#EEF7FA','#D6F8F7',"#BEDAFF",'#5DA4FF',"#0000FF","#D4F9E2","#00FF7F","#008000","#FFFF00","#FFD27F", "#FFB732"    ,"#EE7600",
                                 "#D53E4F","#FF6A6A"))  
my.at = c(0,1,5,10,15,20,25,30,40,50,75,100,150,200)
myColorkey <- list(at=my.at,
                   space="bottom",
                   labels=list(at=my.at))
p=levelplot(r, par.settings=mapTheme,at = my.at, colorkey=myColorkey,margin=F)
print(p)
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

如您所见,小于0且大于200的值都是白色,我不知道如何设置大于或小于某个值的值以显示为特定颜色.Morover,虽然间隔不一样,但如何使颜色键中连续的粗标记之间的空间具有相同的大小?

r lattice levelplot rastervis

4
推荐指数
1
解决办法
2348
查看次数

改变水平图上的色标范围

我想对图像进行一些小小的调整.我生成一个简单的相关热图的命令如下:

psticorr <- cor(psti)
rgb.palette <- colorRampPalette(c("blue", "yellow"), space = "lab")
levelplot(psticorr, col.regions=rgb.palette(120), scales=list(x=list(cex=.3), y=list(cex=.3)), main="PstI: Correlations of loci coverage", xlab="Samples", ylab="Samples" )
Run Code Online (Sandbox Code Playgroud)

我得到了我需要的东西,但我真的很喜欢,如果我可以设置色标的范围,例如从0到1,此时它从我的最低相关(r)值开始.

r levelplot

3
推荐指数
1
解决办法
9612
查看次数

R:levelplot(轮廓中缺少一些值)

我有一个3d数据,x,y,z.我在R中使用了levelplot,但结果看起来并不正确.如果我查看任何水平线(例如y = 0),我希望在图中看到一些对应于值z = 0的蓝色区域.所以,基本上,如果你考虑任何水平线,你应该看到一些蓝色区域,但你只看到顶部的蓝色区域.

这是等高线图: 在此输入图像描述

所以,我正在努力解决这个问题!它与panel.2dsmoother有什么关系吗?我的数据的x范围为3.12到14.88,增量为0.48,y值范围为0到24,增量为4.

完整的数据和代码在这里:

> d<-read.csv("test.csv", header=F, col.names=c("x", "y", "z"))
> library(latticeExtra)
> col.l <- colorRampPalette(c('blue', 'cyan', 'green', 'yellow', 'orange', 'red'))
> col.divs<-20
> levelplot(z ~ x * y, d, cuts=50, contour=TRUE, col.regions=col.l,
      at=seq(from=-0.2,to=4,length=col.divs), panel=panel.2dsmoother)
> d
        x  y       z
1    3.12  0  6.4239
2    3.60  0  2.5190
3    4.08  0  0.1210
4    4.56  0  0.0028
5    5.04  0  0.3355
6    5.52  0  1.7268
7    6.00  0  2.5390
8    6.48  0  2.9881
9    6.96  0  3.2323 …
Run Code Online (Sandbox Code Playgroud)

r panel contour smoothing levelplot

3
推荐指数
1
解决办法
3702
查看次数

如何删除R中的levelplot刻度线边框?

levelplot函数使用方框的所有侧面绘制带有刻度线的热图。我想在x和y轴上保留刻度线,但删除顶部和右侧的刻度线。

如何删除框周围的右边框和顶部边框?

#fake data
data(mtcars)
cars.matrix <- as.matrix(mtcars[c(2:8)])
cars.corr <- cor(cars.matrix)

library('lattice')
levelplot(cars.corr, xlab="car stuff",ylab="Car Stuff", main="car stuff")
Run Code Online (Sandbox Code Playgroud)

汽车水平图图像

r border lattice levelplot

3
推荐指数
1
解决办法
2662
查看次数

R Levelplot 在 RasterLayer 投影上叠加两个 SpatialPolygonsDataFrame

也发布在gis.stackexchange 上

我在 R 的关卡图中绘制 RasterLayer 和 SpatialPolygonsDataFrame 时遇到了一些问题。投影有问题,但我不明白是什么。

在这里您可以找到我的可 重现示例数据和代码:

library(sp)
library(rgdal)
library(rgeos)
library(raster)
library(rasterVis)
library(maptools)

setwd("C:/...path_to/test2")
data<-read.csv("test.csv", header=TRUE)

#creating the raster from a data.frame and giving projection
raster<-rasterFromXYZ(data, crs="+proj=longlat")
raster_proj<-projectRaster(raster, crs="+proj=longlat +datum=WGS84 
+ellps=WGS84 +towgs84=0,0,0,0,0,0,0 +no_defs")

#loading shapes
nuts<-readShapePoly("NUTS_RG_WGS84.shp", proj4string=CRS("+proj=longlat"))
countries<-readShapePoly("countries.shp", proj4string=CRS("+proj=longlat"))

#subsetting the raster
raster_clip<- crop(raster_proj, countries, snap="near")

#plot
p.strip <- list(cex=1.5, lines=1, fontface='bold') 
x.scale <- list(cex=1.5)
y.scale <- list(cex=1.5)
label <- list(labels=list(width=1, cex=1.5), height=0.95)
levelplot(raster_clip, par.settings = RdBuTheme, margin=FALSE,
      at=seq(min(na.omit(values(raster_clip))), max(na.omit(values(raster_clip))), length.out=15),scales=list(x=x.scale, y=y.scale), 
      par.strip.text=p.strip, colorkey=label, …
Run Code Online (Sandbox Code Playgroud)

r spatial levelplot

3
推荐指数
1
解决办法
3268
查看次数

R levelplot colorkey标签和颜色范围

我试图从格子包中制作一个水平图(也是显示轮廓线).我有几个问题(如下所述).

MyData:https: //www.dropbox.com/s/ht55g0qlkiou2x2/growth.matrix.stackoverflow.xlsx

require(lattice)      
require(latticeExtra) 
require(xlsx)   

#matrix to be plotted
growth.matrix<-as.matrix(read.xlsx("C:/Users/eckmannm/Dropbox/growth.matrix.stackoverflow.xlsx",sheetName="p4.pct",colIndex=2:8,startRow=3,endRow=15,header=FALSE))

#column values
TempRange<-as.numeric(c(0, 2, 4, 6, 8, 10, 12))
#row values
MeanTemp<-as.numeric(c(6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18))
#x and y axis labels
x.range<-as.numeric(c(6, 8, 10, 12, 14, 16, 18))

#color ramp
col.l <- colorRampPalette(c('red', 'orange', 'yellow', 'green', 'cyan', 'blue'))

colorplot<-
   levelplot(
   growth.matrix, 
   row.values=(MeanTemp),
   column.values=(TempRange),
   col.regions=col.l,
   at=seq(from=0,to=1.01,length=100),   
   lattice.options=list(key=list(cex=4)),
   panel = panel.2dsmoother,
   scales=list((x=list(labels=MeanTemp)), y=list(labels=TempRange)), 
   colorkey=list(at=as.numeric(factor(c(seq(from=0, to=1, by=.20)))),
               labels=as.character(c( "0", "20%", "40%", "60%", …
Run Code Online (Sandbox Code Playgroud)

r lattice removing-whitespace levelplot

2
推荐指数
1
解决办法
1万
查看次数

在R levelplot中更改色键图例中的字体

我的下一个绘图具有增加的刻度和轴标签字体大小:

library(lattice)
x <- rep(seq(6,15,by=1), each=20)
y <- rep(seq(0,0.95,by=0.05), 10)
z <- x*y
levelplot(z ~ x * y,
          scales=list(x=list(at=seq(6,15,1), cex=2), y=list(at=seq(0,0.9,0.1), cex=2)),
          xlab=list(label="x", cex=2),
          ylab=list(label="y", cex=2))
Run Code Online (Sandbox Code Playgroud)

但是如何在colorkey图例中增加字体大小? 在此处输入图片说明

r levelplot

2
推荐指数
1
解决办法
2840
查看次数