簡體   English   中英

使用列名稱更改ggplot2(R)的顏色

[英]Change colours of ggplot2 (R) using column names

我有一個數據框(請參見下文),我想更改ggplot2中該圖的顏色,以便所有A都被染成紅色,B染成藍色,C染成黑色,D染成黃色。

myDF

label    A    B    C    D
lab1 0.69 0.65 0.73 0.71
lab2 0.43 0.41 0.47 0.41
lab3 0.53 0.47 0.57 0.53
lab4 0.55 0.47 0.60 0.55
lab5 0.53 0.47 0.58 0.53

我嘗試了以下方法:

p <- ggplot(myDF, aes(x=label)) 
     + geom_point(aes(y=A))
     + geom_point(aes(y=B))
     + geom_point(aes(y=C))
     + geom_point(aes(y=D))
     + scale_colour_manual(values=c("A"="red", "B"= "blue", "C"="black", "D"="yellow"))

但這給了我一個錯誤。 如果我不添加scale_colour_manual部分,它將給出正確的繪圖,但所有黑點均會顯示。 我怎樣才能做到這一點? 提前致謝!

首先將數據轉換為長格式。 我會重新考慮黃色白色。

library(tidyr)
library(ggplot2)

myDF %>% 
  gather(key, value, -label) %>% 
  ggplot(aes(label, value)) + geom_point(aes(color = key)) +
    scale_colour_manual(values=c("red", "blue", "black", "yellow"))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM