【问题标题】:Plot a frame when encountering empty vectors in R?在R中遇到空向量时绘制一个框架?
【发布时间】:2017-06-28 23:54:19
【问题描述】:

假设我有三个向量,一个是空的(这里是x.y1),另一个不是空的(这里是x.y2x.y3)。 我的目标是针对空向量,绘制一个空图(只是一个没有任何内容的框架)。

鉴于下面详述的我的绘图计划,是否有可能在lapply 进行最终绘图之前,我可以有一个函数来检查向量是否为空,然后lpply 只需为绘图创建一个框架(例如,@ 987654326@) 用于绘制空向量?

x.y1 = c()
x.y2 = c(2, 3)
x.y3 = c(6, 2)

m = matrix(1:3); layout(m)

plot.names = noquote(paste0("x.y", 1:3))

lapply(plot.names, plot) 

# Error: need finite 'ylim' values # Right now I get this error due to the empty vector!

【问题讨论】:

    标签: r function plot lapply


    【解决方案1】:
    par(mfrow = c(1,3))
    lapply(mget(plot.names), function(a) 
        if(is.null(a)){
            plot(0,0, type = "n")
            }else{
                plot(a)
                })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-17
      • 1970-01-01
      • 1970-01-01
      • 2021-01-17
      • 1970-01-01
      • 2011-08-16
      • 2019-04-03
      相关资源
      最近更新 更多