【问题标题】:R How do save xts plots using lapplyR如何使用lapply保存xts图
【发布时间】:2018-12-19 13:04:25
【问题描述】:

我正在处理一些议会文本 copra,并试图将一些结果可视化。因为我得到了一个项目列表,所以我试图使用 lapply 来遍历我的列表。

    keywords <- c("inburgering", 
             "inburgeringscursus", 
             "inburgeringsplicht", 
             "kennismigranten", 
             "gezinshereniging", 
             "gezinsvorming", 
             "Vreemdelingenwet")}

虽然输出条形图工作得很好

lapply(keywords, function(keyword){
  dt <- dispersion(corpus_in_use, query = keyword, sAttribute = "date")
  ts <- xts(x = dt[,count],
          order.by = as.Date(sprintf("%s-01-01", dt[["date"]])))
  ts_qtr <- aggregate(ts, as.Date(sprintf("%s-01-01", gsub("^(\\d{4})-.*?$", "\\1", index(ts)))))

  jpeg(
    filename = paste("/Users/simgeh/Downloads/bar_", keyword, ".jpg", sep=""),
    width = 2000, height = 1200,
    res = NA
  )

  barplot(ts_qtr, main=keyword, lwd=1, las=3)
  dev.off()
})

使用plot 可视化线图将不起作用。我没有错误。只需null device 1

lapply(keywords, function(keyword){
  disp <- dispersion(corpus_in_use, query = keyword, sAttribute = c("date", "party"))
  ts <- xts(x = disp[,c("CDA", "PVV", "VVD", "PvdA", "D66", "GL")],
            order.by = as.Date(sprintf("%s-01-01", disp[["date"]])))

  #ts_adj <- aggregate(ts, as.Date(sprintf("%s-01-01", gsub("^(\\d{4})-.*?$", "\\1", index(ts)))))
  ts_adj <- as.xts(aggregate(ts, as.Date(as.yearmon(index(ts)))))

  jpeg(
    filename = paste("/Users/simgeh/Downloads/", keyword, ".jpg", sep=""),
    width = 4000, height = 2400,
    res = NA
  )

  plot(ts_adj, 
       main=keyword, 
       multi.panel = TRUE, 
       col = c("black", "black", "blue", "green", "red", "yellow"), 
       lwd=6, 
       cex = 1.5, 
       las = 1)
  dev.off()
})

感谢任何帮助。

【问题讨论】:

  • 似乎一切都按预期进行,可能您提供的路径有问题。如果您尝试直接在会话中绘制其中一个关键字,您会得到什么?
  • @Cath 我同意,我没有仔细阅读这个问题。

标签: r plot lapply xts


【解决方案1】:

我解决了。您必须在打印中设置它:

print(plot(ts_adj, 
       main=keyword, 
       multi.panel = TRUE, 
       col = c("black", "black", "blue", "green", "red", "yellow"), 
       lwd=6, 
       cex = 1.5, 
       las = 1))
  dev.off()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-12
    • 1970-01-01
    • 2020-08-19
    • 2014-12-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多