R ggplot viridis изменить цветовой градиент - PullRequest
0 голосов
/ 07 августа 2020

Здравствуйте, я рисую диаграмму рассеяния, используя R ggplot для раскраски с помощью virdis, я хотел разделить легенду цвета, чтобы получить больший контраст между диапазонами, в настоящее время легендой, имеющей 1000,2000,3000,4000. Между этим разделением это, чтобы получить больше цвета, в настоящее время моя код выглядит следующим образом

library(dplyr)
library(ggplot2)
library("viridis")

df <- tibble(gene   = sample.int(5000),aceth  = rnorm(5000),acvitd = rnorm(5000))
df$log_mean=log(df$gene)
p=ggplot(df, aes(aceth, acvitd))+
  geom_point(aes(color =gene)) +
  theme(legend.position = "top")+
  theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
        panel.background = element_blank(), axis.line = element_line(colour = "black"))

p=p+ theme(legend.position = "top") +
     scale_color_viridis(option = "A",
     name = "mean",
     guide = guide_colourbar(direction = "horizontal",
     barheight = unit(4, units = "mm"),
     barwidth = unit(100, units = "mm"),
     draw.ulim = F,
     title.hjust = 0.5,
     label.hjust = 0.5, title.position = "top"))

Как я хотел, чтобы мой график выглядел

введите описание изображения здесь

может кто подскажет

1 Ответ

0 голосов
/ 07 августа 2020

Возможно, вы ищете scale_colour_vridis_b для объединения ваших цветов?

df <- tibble(gene   = sample.int(5000),aceth  = rnorm(5000),acvitd = rnorm(5000))
df$log_mean=log(df$gene)
p=ggplot(df, aes(aceth, acvitd))+
  geom_point(aes(color = - (aceth + acvitd))) +
  theme(legend.position = "top")+
  theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
        panel.background = element_blank(), axis.line = element_line(colour = "black"))

p+ theme(legend.position = "top") +
     scale_colour_viridis_b(option = "A", values = 0:10 /10, breaks = 0:5 - 2.5)

введите описание изображения здесь

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