R:使用Matplot在相同的图形和比例上绘制表格和曲线

R:使用Matplot在相同的图形和比例上绘制表格和曲线,r,R,我有一张桌子: y 最初,如果我想创建一个绘图,我可以简单地绘制(y),如下所示 但是,现在我想在这个图中添加另一条曲线,即dpois(1:42,lambda=10)。我想用matplot来保持比例。但是由于y是一个表而不是一个向量,我不知道如何使用matplot来解决这个问题。我不想使用par(new=T)bla,因为它并不总是保持比例,而且我正在处理许多不同长度的表 注意:我的目标是在同一图形上用一条额外的曲线重现上面的图(必须保留垂直线,我不需要直方图或条形图。换句话说,我希望可以保留y

我有一张桌子: y

最初,如果我想创建一个绘图,我可以简单地绘制(y),如下所示

但是,现在我想在这个图中添加另一条曲线,即dpois(1:42,lambda=10)。我想用matplot来保持比例。但是由于y是一个表而不是一个向量,我不知道如何使用matplot来解决这个问题。我不想使用par(new=T)bla,因为它并不总是保持比例,而且我正在处理许多不同长度的表

注意:我的目标是在同一图形上用一条额外的曲线重现上面的图(必须保留垂直线,我不需要直方图或条形图。换句话说,我希望可以保留
y
的表格结构)。我可以使用matplot或其他函数在R中实现这一点吗

下面是数据结构

dput(y)
structure(c(0.241441201887921, 0.503290567041149, 0.195639167719205, 
0.0422788007711228, 0.00811008442464934, 0.00152895034235192, 
0.00033238050920694, 0.000132952203682776, 0.000199428305524164, 
6.6476101841388e-05, 6.6476101841388e-05, 6.6476101841388e-05, 
0.00099714152762082, 0.000731237120255268, 0.00232666356444858, 
0.00106361762946221, 0.000465332712889716, 0.000132952203682776, 
0.000199428305524164, 0.000531808814731104, 0.00033238050920694, 
6.6476101841388e-05), class = "table", .Dim = 22L, .Dimnames = structure(list(
    c("1", "2", "3", "4", "5", "6", "7", "8", "9", "15", "20", 
    "24", "26", "27", "28", "29", "30", "38", "39", "40", "41", 
    "42")), .Names = ""))

这就是你要找的吗

如果是这样,您只需添加
行(dpois(1:42,lambda=10))
。即:

y = dput(structure(c(0.241441201887921, 0.503290567041149, 0.195639167719205, 
            0.0422788007711228, 0.00811008442464934, 0.00152895034235192, 
            0.00033238050920694, 0.000132952203682776, 0.000199428305524164, 
            6.6476101841388e-05, 6.6476101841388e-05, 6.6476101841388e-05, 
            0.00099714152762082, 0.000731237120255268, 0.00232666356444858, 
            0.00106361762946221, 0.000465332712889716, 0.000132952203682776, 
            0.000199428305524164, 0.000531808814731104, 0.00033238050920694, 
            6.6476101841388e-05), class = "table", .Dim = 22L, .Dimnames = structure(list(
              c("1", "2", "3", "4", "5", "6", "7", "8", "9", "15", "20", 
                "24", "26", "27", "28", "29", "30", "38", "39", "40", "41", 
                "42")), .Names = "")))

windows()
  plot(y)
  lines(dpois(1:42, lambda=10))
有关更多信息,请参阅

y = dput(structure(c(0.241441201887921, 0.503290567041149, 0.195639167719205, 
            0.0422788007711228, 0.00811008442464934, 0.00152895034235192, 
            0.00033238050920694, 0.000132952203682776, 0.000199428305524164, 
            6.6476101841388e-05, 6.6476101841388e-05, 6.6476101841388e-05, 
            0.00099714152762082, 0.000731237120255268, 0.00232666356444858, 
            0.00106361762946221, 0.000465332712889716, 0.000132952203682776, 
            0.000199428305524164, 0.000531808814731104, 0.00033238050920694, 
            6.6476101841388e-05), class = "table", .Dim = 22L, .Dimnames = structure(list(
              c("1", "2", "3", "4", "5", "6", "7", "8", "9", "15", "20", 
                "24", "26", "27", "28", "29", "30", "38", "39", "40", "41", 
                "42")), .Names = "")))

windows()
  plot(y)
  lines(dpois(1:42, lambda=10))