Этим утром я начал находить решение для создания тепловой карты из таблицы парных значений, которые у меня здесь есть.Я обнаружил, что пакет решетки предлагает levelplots
, что похоже на то, что я был после.Когда мне удалось привести мои данные в правильный формат, я играл с levelplot
.Цветовая тема по умолчанию не дает того, что мне нужно, и я нашел решение в оттенках серого в Интернете.Тем не менее, управление большей частью сюжета пока выходит за рамки моих возможностей.Я не очень часто использую R и пока не очень знаком со многими более глубокими структурами данных.
Моя текущая команда:
library("lattice")
matrix <- as.matrix(rev(read.table("inputfile",header=T,row.names=c(<list of ten names>))))
levelplot(matrix,col.regions = grey(100:0/100))
Это вывод матрицы dput:
structure(c("937.5", "652.5", "1066.5", "787.5", "229.5", "115.5",
"787.5", "763.5", "415.5", "N/A", "1483.5", "1360.5", "1858.5",
"1309.5", "478.5", "322.5", "1375.5", "1588.5", "N/A", "1759.5",
"643.5", "904.5", "1189.5", "712.5", "256.5", "154.5", "829.5",
"N/A", "403.5", "1231.5", "808.5", "1096.5", "1195.5", "913.5",
"292.5", "187.5", "N/A", "1147.5", "478.5", "1192.5", "6712.5",
"6373.5", "6517.5", "6058.5", "4555.5", "N/A", "6394.5", "7357.5",
"6214.5", "6835.5", "3412.5", "3991.5", "3814.5", "3793.5", "N/A",
"1327.5", "3994.5", "3808.5", "3307.5", "4618.5", "1261.5", "1261.5",
"1162.5", "N/A", "310.5", "220.5", "1195.5", "1639.5", "574.5",
"1732.5", "871.5", "847.5", "N/A", "610.5", "262.5", "172.5",
"943.5", "985.5", "448.5", "1525.5", "940.5", "N/A", "1105.5",
"829.5", "292.5", "160.5", "961.5", "1198.5", "538.5", "1495.5",
"N/A", "832.5", "1009.5", "880.5", "280.5", "196.5", "952.5",
"1357.5", "550.5", "1456.5"), .Dim = c(10L, 10L), .Dimnames = list(
c("NA_Pacific", "NA_Central", "NA_Atlantic", "Greenland",
"EU_NW", "EU_WM", "EU_BS.EM", "Asia_SW", "Asia_Central",
"Asia_East"), c("Asia_East", "Asia_Central", "Asia_SW", "EU_BS.EM",
"EU_WM", "EU_NW", "Greenland", "NA_Atlantic", "NA_Central",
"NA_Pacific")))
Это создает почти то, чего я хотел бы достичь.Но серый уродлив.Как я могу изменить его, скажем, на синий?Замена серого на синий не работает ...
Далее, он печатает метки на галочки, как я указал их в моей таблице ввода.Это работает для оси Y, но не для оси X.Как я могу утилизировать отметки по оси Y, чтобы напечатать их на отметки по оси X (повернутые на 90 градусов)?
Наконец, есть небольшой пробел вдольось х (сверху и снизу).Хотя это не является реальной проблемой, было бы неплохо ее устранить.
Я надеюсь, что хотя бы некоторые из вопросов могут быть решены.Заранее спасибо.