Установка определенных значений для функции image () в R - PullRequest
0 голосов
/ 21 мая 2019

Я искал ответ на эту проблему и пока мало что нашел.Моя проблема может быть изложена следующим образом: у меня есть матрица, состоящая в основном из нулей, где ненулевые элементы соответствуют «организмам» с различными состояниями, которые классифицируются как числа от 1 до 8.По крайней мере, существуют организмы со статусами 1,2 и 3, которые присутствуют всегда, поэтому, естественно, я установил цветовой вектор

col.v = c("black", "brown", "red", "green")

, чтобы фон был черным, а организмы со статусами 1-3 окрашены в соответствии с указанным выше вектором.Если какие-либо организмы имеют статусы 4 или выше, то цветовой вектор выращивается соответственно.Я делаю это с помощью следующего кода (приведен пример организмов со статусом 5):

if (length(which(enviroMat == 5)) > 0) {
   col.v = c(col.v, "orange")
}

Так что организмы со статусом 5 окрашены в оранжевый цвет.Наконец, я вызываю функцию image (), чтобы построить все, но, конечно, цвета перевернуты, и все выглядит красным.Я читал о том, как функция image () обрабатывает передаваемые им цветовые векторы, но, к сожалению, я не могу согласиться с градиентной шкалой окраски - разрывы должны быть точными (т.е. это состояние зеленого цвета, а это состояние желтого цвета),

Как получить, чтобы в любой данный момент числовые значения в матрице соответствовали ПРАВИЛЬНОЙ раскраске, которую я назначил им с помощью функции image ()?Если в R есть такая же простая в использовании функция, как image () и более интуитивно понятная, когда дело доходит до раскраски, я весь в ушах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...