你如何控制spatspat的plot.tess中的像素颜色?

时间:2013-02-14 14:52:14

标签: r spatstat

我在心脏形状中产生随机点的细分,我很难弄清楚如何控制图中像素的颜色。我认为plot(tess)(在这个例子中)产生了一个图像值图,我可以通过在颜色渐变中指定相同数量的颜色来控制它们,但事实并非如此。

library(spatstat)

t <- seq(from = 2*pi, to = 0.001, length.out = 1500)
x <- 16*sin(t)**3
y <- 13*cos(t) - 5*cos(2*t) - 2*cos(3*t) - cos(4*t) #heart equation taken from wolfram http://mathworld.wolfram.com/HeartCurve.html.
heart_win <- owin(poly = cbind(x,y)) #note - not self enclosed

#random sample of points within heart
points <- rpoint(100, win = heart_win)
tess <- dirichlet(points)
plot(tess, main = ' ')

#color for 100 values
norm_palette <- colorRampPalette(c("white","red"))
plot(tess, main = ' ', col=norm_palette(100), valuesAreColours = FALSE)

下面生成此图片:

enter image description here

是的我是那个不会让他的妻子成为情人节礼物的人(不要评判我)!

2 个答案:

答案 0 :(得分:2)

即使我没有送礼物给我的妻子,我今天也不会送礼物,你可以试试这个:

 plot(tess$image,col=norm_palette(100))

enter image description here

答案 1 :(得分:2)

您没有在tess对象中调用生成的图像。只需将你的情节调用改为:

plot(tess$image, main="", col=colorRampPalette(c("white","red"))(tess$n), valuesAreColours=FALSE)