如何标记包含空数据值(“NA”)的图(geom_bar)区域?

时间:2017-04-13 14:57:36

标签: r ggplot2 dplyr geom-bar

我正在构建一个功能来比较两组时间序列数据(降雨量),以检查我们运行的雨量计的准确度(QC)。当绘制包含记录间隙的数据文件时,可能会导致审阅者认为这些量具中的一个或多个记录不正确,从而扭曲了质量控制过程。

我想找到一种在绘图上绘制红色x,圆圈或类似内容的方法,以提醒用户该特定日期的特定电台没有数据。这样用户就可以清楚地看到数据丢失,并从审核过程中省略该特定部分的记录。

使用此df,allRN

的任何想法
         date  usgs   noaa
1  2017-01-01  0.00 0.0000
2  2017-01-02  0.57 0.0906
3  2017-01-03  0.75 0.4410
4  2017-01-04  0.00 0.5790
5  2017-01-05  0.00 0.0000
6  2017-01-06  0.01 0.0000
7  2017-01-07  0.46     NA
8  2017-01-08  0.00     NA
9  2017-01-09  0.00 0.0000
10 2017-01-10  0.00 0.0000

和这段代码:

  plotnames <- c(noaa = "Precip, Milton, DE, NOAA", usgs = "Precip,Ng45-02 Well, USGS")
  xdateaxis <- "3 days"  
  allRN <- allRN %>%
    gather(site, precip, -date) 

  ggplot(allRN, aes(x = date, y = precip)) + 
  labs (x = "", y = "Precipitation, inches") + 
  geom_bar(stat = "identity", position =     "dodge", na.rm = FALSE) + 
  facet_wrap(~site, nrow = 2, labeller =     as_labeller(plotnames)) + 
  scale_x_datetime(date_breaks = xdateaxis,     date_labels = "%m-%d") + 
  theme_bw() + theme(axis.text.x =  element_text(angle = 45, hjust = 1)) 

Link to example of plot output when data is missing

1 个答案:

答案 0 :(得分:0)

这是怎么回事?使用is.na(precip)作为审美值,只要您设置结果比例以使FALSENA和{{1},您就可以制作点或条或任何您喜欢的值。是你的颜色或点形状等。

TRUE

enter image description here