Я строю график временного ряда, используя ggplot, однако всякий раз, когда размер фрейма данных превышает примерно 600, ggplot выдает следующую ошибку:
Ошибка в anyDuplicated.default (breaks): длина 1136073601 слишком велика для хеширования
На самом деле, я просто выдает ту же ошибку, когда пытаюсь построить 400 элементов.
Данные расплавляются так, за исключениемЕсть четыре переменные: скорость, реж, темп и давление:
time variable value
1 2006-07-01 00:00:00 speed 4.180111
2 2006-07-02 00:00:00 speed 5.527226
3 2006-07-09 00:00:00 speed 6.650821
4 2006-07-16 00:00:00 speed 4.380063
5 2006-07-23 00:00:00 speed 5.641709
6 2006-07-30 00:00:00 speed 7.636913
7 2006-08-06 00:00:00 speed 7.128334
8 2006-08-13 00:00:00 speed 4.719046
...
201 2006-07-01 00:00:00 temp 17.140069
202 2006-07-02 00:00:00 temp 17.517480
203 2006-07-09 00:00:00 temp 14.211002
204 2006-07-16 00:00:00 temp 20.121617
205 2006-07-23 00:00:00 temp 17.933492
206 2006-07-30 00:00:00 temp 15.244583
Мой код для их построения основан на том, что я нашел здесь: http://had.co.nz/ggplot2/scale_date.html
qplot(time,value,data=test3,geom="line",group=variable) +
+ facet_grid(variable ~ ., scale = "free_y")
Любые указатели иЯ был бы очень признателен !!
Чтобы поменять дату от символа к дате, я использую:
test$time <- strptime(test$time, format="%Y-%m-%d %H:%M:%S")
test$time <- as.POSIXct(test$time, format="%H:%M:%S")
test3 = melt(test,id="time")
class (test $ time) возвращает "[1] "POSIXt" "POSIXct""