Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
插入连续brewer调色板作为ggplot2的图例_R_Ggplot2 - Fatal编程技术网

插入连续brewer调色板作为ggplot2的图例

插入连续brewer调色板作为ggplot2的图例,r,ggplot2,R,Ggplot2,我有一个图,上面有几个观察结果,叠加在柱状图上。观察结果是按顺序收集的,我需要观察它们收集的顺序。使用比例、颜色和酿酒器非常简单。问题是,顺序brewer调色板的最大长度为9。我有多达20个观察的例子,我不知道如何使用插值颜色。下面是一些代码,它以不到10分的分数演示了我想要的输出 # Setting this to be > 9 will cause a warning and not produce the desired result. observations = 9 subset

我有一个图,上面有几个观察结果,叠加在柱状图上。观察结果是按顺序收集的,我需要观察它们收集的顺序。使用
比例、颜色和酿酒器非常简单
。问题是,顺序brewer调色板的最大长度为9。我有多达20个观察的例子,我不知道如何使用插值颜色。下面是一些代码,它以不到10分的分数演示了我想要的输出

# Setting this to be > 9 will cause a warning and not produce the desired result.
observations = 9
subset <-1:observations
res = data.frame(x_data = rnorm(5000),TestID=1:5000)
ggplot(res,aes(x=x_data)) + 
  stat_bin(aes(y=..density..))+
  stat_density(colour="blue", fill=NA)+
  geom_point(data = res[res$TestID %in% subset,], 
             aes(x = x_data, 
                 y = 0, 
                 colour = as.factor(res$TestID[res$TestID %in% subset])
             ),
             size = 5) +scale_colour_brewer("Fancy title", type="seq", palette='Reds')
#将此设置为>9将导致警告,并且不会产生所需的结果。
观察值=9

子集展开我的评论,您需要使用
colorrmppalete

library(RColorBrewer)
blues_fun <- colorRampPalette(brewer.pal(9,"Blues"))
> blues_fun(20)
 [1] "#F7FBFF" "#ECF4FB" "#E1EDF8" "#D7E6F4" "#CDE0F1" "#C1D9ED" "#B0D2E7" "#A0CAE1" "#8BBFDC" "#75B3D8" "#62A8D2" "#519CCB"
[13] "#4090C5" "#3282BD" "#2474B6" "#1966AD" "#0E59A2" "#084B94" "#083D7F" "#08306B"

您只需将生成的颜色交给
参数。

您需要使用
scale\u color\u gradient2
或使用
scale\u color\u手册
滚动您自己的色标。brewer调色板最多只能做9个类别(这是正确的)。谢谢,但是你能详细介绍一下如何使用scale\u Color\u手册吗?我了解了colorRampPalette,但不清楚scale_Color_手册的使用。我刚刚添加了一篇博客文章,内容正是:
ggplot(res,aes(x=x_data)) + 
  stat_bin(aes(y=..density..))+
  stat_density(colour="blue", fill=NA)+
  geom_point(data = res[res$TestID %in% subset,], 
             aes(x = x_data, 
                 y = 0, 
                 colour = as.factor(res$TestID[res$TestID %in% subset])
             ),
             size = 5) + 
  scale_colour_manual("Fancy title",values = blues_fun(9))