这是使用
的测试代码x_coord <- c(1,2,3,4)
y_coord <- c(1,2,3,4)
value <- c(12,15,19,30)
foo <- data.frame(x_coord, y_coord, value)
library(MBA)
foo=foo[ order(foo[,1], foo[,2],foo[,3]), ]
mba.int <- mba.surf(foo, 300, 300, extend=T)$xyz.est
library(fields)
fields::image.plot(mba.int,legend.only = FALSE, axes=FALSE)
轴部分删除轴,但是当我尝试移除图例条时,垂直条指示颜色测量值,它不会消失。
我试过smallplot = 1,但这给了我一个错误,但它摆脱了垂直传奇,
任何人都知道如何在没有任何错误的情况下摆脱传奇?
答案 0 :(得分:3)
如果您不想要颜色图例,请改用内置的image功能。您正在使用的功能专门用于轻松添加图例。
如果要保持与字段image.plot
功能相同的配色方案:
image(<your data>, ..., col = tim.colors())
使用此功能可创建完全相同的图像而无需图例。
答案 1 :(得分:0)
image
和 image.plot
函数实际上具有完全不同的绘图功能。
使用内置 image
的一个问题(至少对我来说,试图绘制区域气候模型数据)是它无法处理不规则的网格。 image.plot
函数在内部使用 poly.image
函数来创建绘图。两者都包含在 fields
包中。好消息是 poly.image
函数也可以单独使用,例如:
library("fields")
# create an example of an irregular 3x3 grid by adding random perturbations up to ±0.6
x <- matrix(rep(1:3,each=3) + 0.6*runif(9), ncol=3)
y <- matrix(rep(7:9,times=3) + 0.6*runif(9), ncol=3)
# 9 values, from 1 to 9
z <- matrix(1:9,nrow=3)
# Please avoid the default rainbow colours, see e.g.
# https://www.climate-lab-book.ac.uk/2014/end-of-the-rainbow/
# Other examples of colour schemes: https://colorbrewer2.org/
col <- colorRampPalette(c("#2c7bb6","#abd9e9","#ffffbf","#fdae61","#d7191c"))(9)
par(mfrow=c(1,3), mar=c(4,4,4,1), oma=c(0,0,0,0))
image(x=7:9,y=1:3,z,col=col, main="image()\n Only regular grid. Also note transposition.")
image.plot(x,y,z,col=col, main="image.plot()\n Always with colorbar.")
poly.image(x,y,z,col=col, main="poly.image()\n Does not include colorbar.")