Растровый пакет R plot() для создания монохромных изображений

Я хотел бы получить монохромные изображения, используя функцию сюжета. Но он продолжает создавать цветные изображения. У меня даже были монохромные изображения, которые я построил с помощью функции графика, и я получил их в каком-то странном зелено-оранжевом цвете. Как я могу заставить функцию сюжета предоставлять монохромные изображения? Я пытался прочитать о функции getValues, но мне было трудно понять, так как я не занимаюсь анализом изображений. Кажется, что функция getBlocks() возвращает монохромные изображения. Но есть ли способ получить монохромные изображения, используя только функцию построения графика?

library(raster)
r <- raster(matrix(runif(100), 10))
plot(r)
#even below lines produce a yellow color image. i thought that they will produce a black or white square
r <- raster(matrix(rep(0,100), 10))
plot(r)

person user2543622    schedule 31.01.2015    source источник
comment
Изображение, которое вы создаете, является монохромным, поскольку оно включает только желтый цвет. Вы, вероятно, имеете в виду оттенки серого.   -  person jbaums    schedule 31.01.2015
comment
ваш комментарий имеет смысл. Спасибо   -  person user2543622    schedule 01.02.2015


Ответы (1)


Если вы ищете вектор цветов в оттенках серого, вы можете использовать gray.scale() для аргумента col в plot():

library(raster)
r <- raster(matrix(rnorm(100), 10))
plot(r, col = gray.colors(10, start = 0.3, end = 0.9, gamma = 2.2, alpha = NULL))

Вы получали зелень от plot(), потому что по умолчанию для col используется

rev(terrain.colors(255)) 
person Steven    schedule 31.01.2015
comment
Любая идея, как я могу нарисовать свое изображение в исходных цветах (вместо зеленого и желтого)? - person user2543622; 24.04.2015