У меня есть кадр данных с двумя столбцами. Первое - это числовое значение, другое - строка, описывающая время. Формат времени выглядит как yyyy-mm-dd -hh-mm-ss - ?????? (например, 2015-03-04--12-11-35-669696), я не знаю, что означают последние 6 цифр. Например.R + ggplot: упорядочить нерегулярные строки времени для участка
y time
1 4.548 2014-08-11--09-07-44-202586
2 4.548 2014-08-11--09-07-54-442586
3 4.548 2014-08-11--09-08-04-522586
4 4.478 2014-08-11--09-08-14-762586
5 4.431 2014-08-11--09-08-24-522586
6 4.446 2014-08-11--09-08-34-922586
7 4.492 2014-08-11--09-08-44-522586
8 4.508 2014-08-11--09-08-54-442586
9 4.486 2014-08-11--09-09-04-202586
10 4.497 2014-08-11--09-09-14-442586
11 4.461 2014-08-11--09-09-24-202586
Я хочу, чтобы построить их с
ggplot(df, aes(x=time, y=y)) + geom_line()
Но у меня есть проблема, что ggplot не знает, как бороться с данными классового характера и, в частности, с моим заданным форматом времени. Я попытался использовать AsciiToInt из pakage {sfsmisc}, чтобы преобразовать строки в числовые значения, но он повторяет список целых чисел для каждой строки (по одному числу для каждого символа, конечно). Я также могу сортировать свои строки времени с mixedsort из pakage {gtools}, но я не использую его для сюжета (также учитывая расстояние).
Другая проблема заключается в том, что я не хочу, чтобы каждая строка времени отображалась как галочка по оси x, из-за того, что у меня около 20 тыс. Строк. Возможно, я могу решить эту проблему, например, в this question, но я не могу проверить, что до тех пор, пока возникает первая проблема.
Можете ли вы мне помочь, построив такие данные со временем как числовое значение на оси х?
Когда я также хотел добавить секунды, я использовал 'format ="% Y-% m-% d -% H-% M-% S', но тогда тики показывают только минуты (45 , 00,15,30,45, ...) Итак, я использовал 'scale_x_datetime (breaks = date_breaks (« 30 секунд »), labels = date_format («% Y-% m-% d% H:% M:% S "))', чтобы исправить это. – Jojo