【问题标题】:lines not showing up on line graph in R when using plot() then lines()使用 plot() 然后使用 lines() 时,线条未显示在 R 中的折线图上
【发布时间】:2017-04-04 11:43:51
【问题描述】:

我正在尝试使用同一数据框中不同列的数据创建折线图。我可以创建初始图,但是当我添加 lines() 时,什么也没有出现。

我尝试为列中的数据创建单独的向量,并使用lines() 而不是将其从数据框中拉出,但这不起作用,直接从数据框中提取也不起作用。

plot(re_date, date_sub$Sub_metering_1, type = "l", xlab = "", ylab = "Energy sub metering")
lines(date_sub$Sub_metering_2, col = "red")
lines(date_sub$Sub_metering_3, col = "blue")

(注意:x 变量 re_date 是我在转换原始 date_sub 数据框中的日期/时间列后创建的单独向量。 那应该对 y 变量没有任何影响?

最初的情节运作良好,但没有新的红线或蓝线。当我对 plot() 中的线使用相同的数据时,将 date_sub$Sub_metering_1 替换为 date_sub$Sub_metering_2(分别是 _3)它们都创建了折线图。 我想可能是因为信息在 y 轴上,所以我什至尝试了 lines( ,date_sub$Sub_metering_2, col = "red").

我意识到 lines() 也缺少 type = "l" 。我用“l”运行它,然后遇到一个省略它的教学网站,我想,哦,它有点多余,所以我把它拿出来,结果还是一样。

我是 R 新手,如果这是一个愚蠢的问题,我深表歉意。

【问题讨论】:

  • 如果没有可重复的例子,很难说太多,但我猜你的原始图表的比例对于红线和蓝线是关闭的。考虑使用xlimylim 增加x/y 轴。
  • 考虑使用matplot

标签: r graph line


【解决方案1】:

在您的 plot 语句中,您有一个 x 和 y 组件(re_date, date_sub$Sub_metering_1)。

当您致电lines 时,您只需提供 y。 R不知道你也想要 re_date 作为 x 轴。您必须明确告诉 R,否则您要使用 lines 绘制的数据的 x 值只是 x=1:length(date_sub$Sub_metering_2),即 1、2、3、4,5 ...

尝试以下方法:

plot(re_date, date_sub$Sub_metering_1, type = "l", xlab = "", ylab = "Energy sub metering")
lines(re_date, date_sub$Sub_metering_2, col = "red")
lines(re_date, date_sub$Sub_metering_3, col = "blue")

【讨论】:

  • 非常感谢@PhillipD!它起作用了,这就是它所需要的。我知道这是一件相当简单的事情,我没有做!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多