Построение нескольких строк из фрейма данных в R - PullRequest
6 голосов
/ 27 октября 2011

Я строю функцию R для построения нескольких строк из таблицы данных, я не понимаю, почему это не работает?

data = read.table(path, header=TRUE);
plot(data$noop);
lines(data$noop, col="blue");
lines(data$plus, col="green");

Я читаю данные из файла, который у меня есть, которыйотформатирован так:

 noop         plus         mins
 33.3         33.3         33.3
 30.0         40.0         30.0
 25.0         50.0         25.0

Это минимальное представление набора данных, который содержит больше заголовков и больше точек данных.Таким образом, каждая из строк этого набора данных отражает выборку, взятую в данный момент времени.Поэтому моя цель - прочитать эти данные из файла, а затем построить каждый столбец как последовательность точек, соединенных линиями разного цвета.

Подход, который я использую в настоящее время, заключается в построении только одной линии, а не нескольких строк.

Ответы [ 3 ]

17 голосов
/ 27 октября 2011

Посмотрите на пакет ggplot2

library(ggplot2)
library(reshape)
data <- data.frame(time = seq(0, 23), noob = rnorm(24), plus = runif(24), extra = rpois(24, lambda = 1))
Molten <- melt(data, id.vars = "time")
ggplot(Molten, aes(x = time, y = value, colour = variable)) + geom_line()

enter image description here

9 голосов
/ 27 октября 2011

Или с базой:

data <- data.frame(time = seq(0, 23), noob = rnorm(24), plus = runif(24), extra = rpois(24, lambda = 1))
plot(extra ~ time, 
  data = data, 
  type = "l", 
  ylim = c(min(data[ ,-1]), max(data[ ,-1])),
  ylab = "value")
lines(data$time, data$plus, col = "steelblue")
lines(data$time, data$noob, col = "pink")
4 голосов
/ 29 марта 2013

Вам не нужно загружать любой пакет для или применять, просто используйте функцию matplot, встроенную в R ... Каждый столбец таблицы будет линией на вашем графике (или символами, если вы предпочитаете).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...