我正在尝试在R中生成填充的等高线图。我的数据标签x和y是长度为20的向量,而我的z矩阵是20乘20.以下是我的代码,其中fill.contour命令直接从r help(filled.contour)文件,只删除了无关的参数:
x <- seq(1,5)
y <- seq(1,5)
cells <- c(1,4,9,16,25,1,4,9,16,25,1,4,9,16,25,1,4,9,16,25,1,4,9,16,25)
z <- matrix(cells,nrow=5,ncol=5,byrow=TRUE)
filled.contour(x,y,z,nlevels = 20,col = cm.colors(19))
答案 0 :(得分:0)
您必须删除col =color.palette(length(levels) - 1)
。您必须知道,在R手册中,用法下的行只显示哪些参数可用,旁边是默认参数。这并不一定意味着你可以用完全相同的方式编写它。因此,如果您保留这些参数,它将自动获取此处所述的值。
例如,您应该查看示例部分,该部分通常非常丰富。
修改强>
要获得19种颜色,你必须写
filled.contour(x,y,z,nlevels = 20,col =cm.colors(19))
cm.colors是一个返回n种颜色的函数。 color.palette不能为你做,因为它不是一个函数,而是fill.contour的参数。