我刚开始使用 R 并且想知道如何绘制一条线。使用我的一个工具,我正在做生成 csv 文件的回归。格式如下:
X ,Y, Y1,Y2
从这个 csv 文件中,我喜欢画三行作为(x,y)
,(x,y1)
和(x,y2)
. 如何从 csv 文件中执行此操作?抱歉它的基本问题,但如果有人帮助我,我将不胜感激。
我刚开始使用 R 并且想知道如何绘制一条线。使用我的一个工具,我正在做生成 csv 文件的回归。格式如下:
X ,Y, Y1,Y2
从这个 csv 文件中,我喜欢画三行作为(x,y)
,(x,y1)
和(x,y2)
. 如何从 csv 文件中执行此操作?抱歉它的基本问题,但如果有人帮助我,我将不胜感激。
matplot
如果您想使用基本 R,我可能会使用:
#Fake data
x <- data.frame(x = 1:100, y1 = rnorm(100), y2 = runif(100))
#Plot
matplot(x[,1], x[, -1], type="l", lty = 1)
#Everyone needs a little legend love
legend("topright", legend = colnames(x)[-1], fill=seq_along(colnames(x)[-1]))
或者,我会使用 ggplot2
library(ggplot2)
library(reshape2)
#Melt into long format with first column as the id variable
x.m <- melt(x, id.vars = 1)
#Plot it
ggplot(x.m, aes(x, value, colour = variable)) +
geom_line() +
theme_bw()
当您查看该问题时,该答案与右侧弹出的相关答案和其他几个答案非常相似。
yourData <- read.csv("yourCSV.csv")
with(yourData, plot(X, Y, type = "l"))
with(yourData, lines(X, Y1))
with(yourData, lines(X, Y2))
另请参阅?abline
。