R 如何为ggplot2(几何图形平滑/几何图形线)添加手动颜色

R 如何为ggplot2(几何图形平滑/几何图形线)添加手动颜色,r,colors,ggplot2,R,Colors,Ggplot2,我想用ggplot2构建一个绘图。因此,我使用geom_线来可视化线,使用geom_平滑来显示特定索引的最小-最大范围。 使用了两个数据框,第一行包括日期(例如:2013-02-04),下一行是测量值(例如:2.532283) 首先,我生成一个包含所有样式的空ggplot: yrange_EVI2=是索引的范围(最小-最大) xrange=是x轴的日期范围(最早-最晚日期) EVI2_veg首先,在任何绘图代码中包含样本数据总是很好的,否则我们无法运行它来查看您看到的内容。请阅读后再发其他帖子。

我想用ggplot2构建一个绘图。因此,我使用geom_线来可视化线,使用geom_平滑来显示特定索引的最小-最大范围。 使用了两个数据框,第一行包括日期(例如:2013-02-04),下一行是测量值(例如:2.532283)

首先,我生成一个包含所有样式的空ggplot:

yrange_EVI2=是索引的范围(最小-最大) xrange=是x轴的日期范围(最早-最晚日期)


EVI2_veg首先,在任何绘图代码中包含样本数据总是很好的,否则我们无法运行它来查看您看到的内容。请阅读后再发其他帖子。这将使人们更容易帮助你。无论如何,这里有一些示例数据

Sample_EVI2_A_SPOT<-data.frame(
    Date=seq(as.Date("2014-01-01"), as.Date("2014-02-01"), by="1 day"),
    Tomato = cumsum(rnorm(32))
)
Grouped_Croptypes_EVI2<-data.frame(
    Date=seq(as.Date("2014-01-01"), as.Date("2014-02-01"), by="1 day"),
    Vegetable_mean=cumsum(rnorm(32))
)
Grouped_Croptypes_EVI2<-transform(Grouped_Croptypes_EVI2,
    Vegetable_max=Vegetable_mean+runif(32)*5,
    Vegetable_min=Vegetable_mean-runif(32)*5
)

Sample_EVI2_A_spot感谢您的详细回答。因此,我了解如何使用color=”“和fill=”“命令。对于这个糟糕的R示例,我阅读了编写一个好示例的说明。@MrFlick有一个输入错误,您应该在“theme_bw(base_size…”行的末尾添加一个“+”。我尝试使用edit进行编辑,但它警告我编辑至少应该是6个字符,所以我把它留给您,以免弄乱任何其他内容:)这工作得很好!我错过了第一次你需要给geom_线赋予颜色“组”(这实际上并不意味着一个正确的颜色),然后才用在colour geom_线中定义的相同名称缩放geom_手册!
EVI2_veg <- EVI2_veg +
            geom_smooth(aes(x=Date, y=Vegetable_mean, ymin=Vegetable_min, ymax=Vegetable_max), data=Grouped_Croptypes_EVI2, stat="identity") +
            geom_line(aes(x=Date, y=Tomato), data=Sample_EVI2_A_SPOT)
EVI2_veg <- EVI2_veg + 
             scale_fill_manual("Min-Max-Range and Mean \nof specific Croptypes",labels=c("Vegetable","Tomato"),values=c("#008B00","#FFFFFF")) +
             scale_color_manual("Min-Max-Range and Mean \nof specific Croptypes",labels=c("Vegetable","Tomato"),values=c("#008B00","#CD4F39"))
Sample_EVI2_A_SPOT<-data.frame(
    Date=seq(as.Date("2014-01-01"), as.Date("2014-02-01"), by="1 day"),
    Tomato = cumsum(rnorm(32))
)
Grouped_Croptypes_EVI2<-data.frame(
    Date=seq(as.Date("2014-01-01"), as.Date("2014-02-01"), by="1 day"),
    Vegetable_mean=cumsum(rnorm(32))
)
Grouped_Croptypes_EVI2<-transform(Grouped_Croptypes_EVI2,
    Vegetable_max=Vegetable_mean+runif(32)*5,
    Vegetable_min=Vegetable_mean-runif(32)*5
)
EVI2_veg <- ggplot() + geom_blank() + 
    ggtitle("EVI2 for reference-data in Azraq (Jordan)") +
    ylab("EVI2") + xlab("month") +
    theme_bw(base_size = 12, base_family = "Times New Roman") + 
    geom_smooth(aes(x=Date, y=Vegetable_mean, ymin=Vegetable_min, 
        ymax=Vegetable_max, color="Vegetable", fill="Vegetable"),
        data=Grouped_Croptypes_EVI2, stat="identity") +
    geom_line(aes(x=Date, y=Tomato, color="Tomato"), data=Sample_EVI2_A_SPOT) +
    scale_fill_manual(name="Min-Max-Range and Mean \nof specific Croptypes",
        values=c(Vegetable="#008B00", Tomato="#FFFFFF")) +
    scale_color_manual(name="Min-Max-Range and Mean \nof specific Croptypes",
        values=c(Vegetable="#008B00",Tomato="#CD4F39"))
EVI2_veg