Я создаю некоторые карты из растровых файлов, используя "растровый" пакет в R. Я хотел бы создать сравнительные растры, показывая несколько карт бок о бок. Для этого важно, чтобы используемые цветовые шкалы были одинаковыми для всех карт, независимо от значений на каждой карте. Например, если карта 1 имеет значения от 0-1, а карта 2 имеет значения от 0 до 0,5, ячейки со значением 0,5 должны иметь один и тот же цвет на обеих картах.
Например:
- map 1 имеет значения от 0 до 1
- map 2 имеет значения от 0 до 0,5
- цвет идет от красного (самого низкого) до зеленого (самого высокого)
Я хотел бы иметь значение 0,5 для того же цвета на обеих картах (т.е. желтый, на полпути между красным и зеленым). Текущее поведение в том, что оно желто на карте 1, а зеленое - на карте 2.
Я не могу найти способ сделать эту работу. Я не вижу способа установить диапазон значений пикселей для использования с функцией построения графика. setMinMax() не помогает (поскольку "plot" всегда вычисляет значения). Даже попытка установить значения вручную (например, g1 @data @max < - 10) не работает (они игнорируются при построении графика).
Наконец, создание стека карт (которые, как можно ожидать, будет отображать все в одной цветовой гамме) тоже не работает - каждая карта по-прежнему имеет собственную цветовую шкалу.
Любые мысли о том, как это сделать?
EDIT:
В результате я решил:
plot( d, col=rev( rainbow( 99, start=0,end=1 ) ), breaks=seq(min(minValue( d )),max(maxValue(d)),length.out=100) )