Я очень новичок в R, и недавно я играл с библиотекой fheatmap, чтобы генерировать, ну, карты тепла. Моя проблема заключается в том, что я хочу покрасить свою тепловую карту определенным образом. Я опишу ниже:Цвет Pheatmap для определенного значения
- Значения < 1 должен быть цвет рампы (например, темно-синего до светло-голубого)
- значение в точности равно 1 должен быть темно-серый
- Значения> 1 должны быть цвет рампы (например, темно-красного до светло-красного)
Я играл с параметром breaks
и параметр color
с различными палитрами, но я не могу показаться, чтобы прибить хорошее решение. ближайший я пришел что-то вроде этого:
pheatmap(mtx,
color = c('#4444FF','#F4FF4F','#FF4444'),
breaks = c(0,1,2,3),
legend_breaks = c(0,1,2))
Но это не позволяет для визуализации диапазонов, т.е. 0,1 должен выглядеть другой оттенок, чем 0,9, даже если они оба должны быть синим цветом. Может ли кто-нибудь давать предложения или советы? Я посмотрел на This ticket и рассмотрел возможность изменения 1 на NA, но для меня это слишком сложно. Не говоря уже о том, что мне придется отключить кластеризацию для pheatmap, что я не хочу делать. Благодаря!
Пожалуйста, прочитайте [Почему я должен принять ответ?] (Https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – Masoud
В случае кто-то столкнулись с этим вопросом с немного разными потребностями, обратитесь к этому вопросу: [Heatmap с настраиваемой шкалой цветовых шкал для значений ниже и выше пороговых значений] (https://stackoverflow.com/questions/44398360/heatmap-with-customized-color-scale -Бар-для значений ниже-и-выше порогов). – Masoud