Image 向图像添加颜色图例

Image 向图像添加颜色图例,image,r,legend,Image,R,Legend,我有一个矩阵,我用图像(矩阵)制作了一个图像。是否可以像在绘图时添加图例一样向图像添加颜色图例?image在R中是一个相当基本的绘图功能。如果您想要一个自动为图例分配空间的函数,您可能需要查看filled.contour。或者试试这个: library(lattice) levelplot(matrix) 或者可以提供如下图例: legend(grconvertX(0.5, "device"), grconvertY(1, "device"), c("0",".5",

我有一个矩阵,我用
图像(矩阵)
制作了一个图像。是否可以像在绘图时添加图例一样向图像添加颜色图例?

image
在R中是一个相当基本的绘图功能。如果您想要一个自动为图例分配空间的函数,您可能需要查看
filled.contour
。或者试试这个:

 library(lattice)
 levelplot(matrix)

或者可以提供如下图例:

     legend(grconvertX(0.5, "device"), grconvertY(1, "device"), 
     c("0",".5","1"), fill = colMap[c(1, 10, 20)], xpd = NA)
其中,grconvertX()和grconvertY()以及xpd确保图例位于绘图区域之外。 一个合理的例子是:

    nsamples <- 20
    mat <- rnorm(nsamples, .5, .15)
    dim(mat) <- c(4, 5)
    colMap <- colorRampPalette(c("red","white","blue" ))(nsamples)
    image(1:4, 1:5, mat, col = colMap, ylab="", xlab="")
    legend(grconvertX(0.5, "device"), grconvertY(1, "device"),
    c("0",".5","1"), fill = colMap[c(1, 10, 20)], xpd = NA)

nsamples从包
字段中,您可以尝试
image.plot
。此功能基于常规的
图像
,但它提供了图形图例

library(fields)
x = 1:10
y = 1:15
z = outer( x,y,"+") 
image.plot(x, y, z)

这个问题太含糊了,无法正确回答。请添加您正在使用的编程语言、平台、库等using@Jasonr是一种编程语言!非常有用。对于具有多个图形的绘图,我在图例语句前面使用了
par(mfrow=c(1,1),new=TRUE,fig=c(0,1,0,1))
和“nfc”而不是“device”。