基于R ggplot2中的子集在循环中创建动态Ymax

基于R ggplot2中的子集在循环中创建动态Ymax,r,ggplot2,formatting,tidyverse,scale,R,Ggplot2,Formatting,Tidyverse,Scale,我试图创建单独的时间序列图,其中对于每个图,y轴的范围从零到每个子集中的最大值。子集从对应于TCE浓度(在y轴上)的唯一井ID列表中指定。很遗憾,我无法共享我正在使用的数据,但如果有人能帮我解决问题,我将不胜感激 这是我的代码: require(ggplot2) tce.charts <- function(lba, na.rm = TRUE) { well_list <- unique(lba$well_id) for (i in seq_along(well

我试图创建单独的时间序列图,其中对于每个图,y轴的范围从零到每个子集中的最大值。子集从对应于TCE浓度(在y轴上)的唯一井ID列表中指定。很遗憾,我无法共享我正在使用的数据,但如果有人能帮我解决问题,我将不胜感激

这是我的代码:

require(ggplot2)

tce.charts <- function(lba, na.rm = TRUE) {
  
  well_list <- unique(lba$well_id)
  
  for (i in seq_along(well_list)) {
    
    plot <- ggplot(subset(lba, lba$well_id == well_list[i]),
                   aes(x = sample_date, y = tce)) + theme_classic() +
      geom_line(color = 'red3', size = 0.5) +
      geom_point(color = 'red3', size = 0.75) +
      scale_x_date(date_labels = "%m/%d/%y", breaks = '3 months') + 
      ylim(0, max(lba$tce)) +
      labs(title = paste(well_list[i]), subtitle = 'Historical TCE Concentrations',
           x = 'Sample Collection Date',
           y = 'TCE Concentration (µg/L)') +
      theme(plot.title = element_text(size=14, hjust=0.5, face="bold"),
            plot.subtitle = element_text(size=12, hjust=0.5),
            axis.title.x = element_text(size=10, face="bold"),
            axis.text.x = element_text(size=8, angle=45, hjust=1, color="black"),
            axis.text.y = element_text(size=8, color="black"),
            axis.title.y = element_text(size=10, face="bold"))
    
    
    ggsave(plot = last_plot(), 
           file= paste(wd, '/Trend Chart Outputs/',  well_list[i], ".pdf", sep = ''), 
           width = 6.5, height = 4.5, units = 'in', dpi = 300)
  }
}

tce.charts(lba)
require(ggplot2)

tce.charts还没有仔细查看,但是如果您想在默认情况下使用数据的范围,
ylim
可以将
NA
作为其参数之一。所以我会尝试
ylim(0,NA)+
而不是
ylim(0,max(lba$tce))+
。这就像一个魔咒。哇,答案这么简单,简直让人发疯。非常感谢你!了解这种感觉。很高兴它有帮助。我们还没有仔细查看,但是如果您想在默认情况下使用数据的范围,
ylim
可以将
NA
作为其参数之一。所以我会尝试
ylim(0,NA)+
而不是
ylim(0,max(lba$tce))+
。这就像一个魔咒。哇,答案这么简单,简直让人发疯。非常感谢你!了解这种感觉。很高兴它有帮助