размещение легенды под растровым графиком и избавление от прямоугольника, окружающего растровый график - PullRequest
1 голос
/ 08 марта 2012

Я строю растровое изображение из данных, хранящихся в файле, используя три строки кода, приведенные ниже. Однако я хочу создать легенду (или диаграмму цвета) под изображением. Легенда по умолчанию генерируется справа. Любая идея, как я могу получить легенду в нужном месте. Во-вторых, я получаю прямоугольник вокруг изображения, которое мне не нужно в конечном графике. Пожалуйста, помогите мне с этими вопросами.

            temp_var<-raster(input)
    par(mar=c(0,0,0,0))
    plot(temp_var,legend=F,axes=FALSE)

Спасибо ...

Ответы [ 2 ]

1 голос
/ 08 марта 2012

Я боролся с прямоугольником в методе plot() для Raster* объектов.Я уверен, что есть способ избавиться от этого, но вам не нужно.Я всегда использовал этот обходной путь:

image(temp_var, axes=FALSE, xlab="", ylab="")

Что касается вашей легенды, я полагаю, вам придется создать ее вручную в соответствии со своими спецификациями.Попробуйте:

layout(matrix(c(1,1,1,1,1,2,2), 7, 1))
par(mar=c(0,0,0,0))
image(temp_var, axes=FALSE, xlab="", ylab="")
plot(c(0,1), c(0,1), type="n", xlab="", ylab="", axes=FALSE)
legend(0.1,0.9, legend=c(1:5), fill=rainbow(5), horiz=TRUE)
0 голосов
/ 08 марта 2012

В прошлом я использовал colorbar.plot с некоторым успехом. Отключите легенду, которую график (растр (x)) автоматически вставляет с легендой = FALSE, а затем вызовите colorbar.plot (), т.е.

plot(raster(x),legend=FALSE)
colobar.plot(...) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...