1

ハート型のランダム ポイントのテッセレーションを生成しています。プロット内のピクセルの色を制御する方法を理解するのに苦労しています。(この例では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)

これにより、以下の画像が生成されます。

ここに画像の説明を入力

はい、私はその日まで彼の妻をバレンタインデーの贈り物にしない男です(私を判断しないでください)!

4

2 に答える 2

2

私は妻に贈り物をしませんし、今日も贈り物をしません。あなたはこれを試すことができます:

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

ここに画像の説明を入力

于 2013-02-14T15:50:26.027 に答える
2

結果の画像を tess オブジェクトで呼び出していません。プロット呼び出しを次のように変更するだけです:

plot(tess$image, main="", col=colorRampPalette(c("white","red"))(tess$n), valuesAreColours=FALSE)
于 2013-02-14T15:50:53.500 に答える