簡體   English   中英

ggplot2 中的線條顏色

[英]line colour in ggplot2

我不明白以下內容:為什么

data_ts <- data.frame(
  day = as.Date("2017-06-14") - 0:364,
  value = runif(365) + seq(-140, 224)^2 / 10000)
ggplot(data_ts, aes(x=day, y=value)) +
  geom_line() +
  scale_colour_manual(values = "#ffcc33")

產生一條黑線? 我知道,我可以使用

ggplot(data_ts, aes(x=day, y=value)) +
  geom_line(colour = "#ffcc33")

相反,但我想了解為什么 'scale_colour_manual' 在上面的示例中不起作用。

scale_colour_manual function 僅影響通過美學aes()映射的值。 所有scale_*函數也是如此。 如果值未在aes()中設置,則scale不會觸及它們。 如果你想使用scale_colour_manual ,它需要一個映射。 就像是

ggplot(data_ts, aes(x=day, y=value)) +
  geom_line(aes(color="mycolor")) +
  scale_colour_manual(values = "#ffcc33")

或者為了確保映射的文字值和 colors 之間的正確匹配,您可以執行類似的操作

ggplot(data_ts, aes(x=day, y=value)) +
  geom_line(aes(color="mycolor1")) +
  geom_line(aes(y=value+1, color="mycolor2")) +
  scale_colour_manual(values = c(mycolor1="#ffcc33", mycolor2="#33ccff"))

暫無
暫無

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

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