ось абсцисс в виде пользовательских интервалов времени - PullRequest
0 голосов
/ 20 октября 2018

У меня есть такие данные:

Day Hour Minute   averagespeed   
1    0    14       55
1    0    29       65
1    0    44       70  
1    0    59       55 
1    1    14       32
1    1    29       50
1    1    44       96
1    1    59       54
1    2    14       64
1    2    29       70

Я хочу построить эти данные в виде гистограммы или гистограммы, но ось x указана в часах от 0 до 23 и разделена на 4 интервала по 15 минут, например:this:

0 14 29 44 59 1 14 29 44 59 2 14 29 44 59 ..............23

против averagespeed для оси y.

эти данные за 30 дней, и я не знаю, как сделать ось x такой же, как показано на моих столбцах, показанныхвыше.

1 Ответ

0 голосов
/ 20 октября 2018

Вам просто нужно определить свои собственные метки и пользовательскую ось X.Еще одна трудность заключается в том, что по умолчанию метки такой оси не совпадают должным образом с barplot (но с обычным plot).

Таким образом, вы должны использовать приведенный ниже обходной путь, сохраняя график какзатем объект для принудительной установки положения меток x:

mylabels <- paste0(df$Hour, "h", df$Minute,"min")
# labels not aligned ------------------------------------------------------
#barplot(df$averagespeed, xaxt = "n", xlab="Time")
#axis(1, at=1:length(df$averagespeed), labels=mylabels)
# labels are aligned ------------------------------------------------------
m<-barplot(df$averagespeed, xaxt = "n", xlab="Time")
m
axis(1, at=m,labels=mylabels)

enter image description here Создание оси x объясняется здесь: https://stackoverflow.com/a/5182416/5224236

Обходной путь для барплотов здесь: https://stackoverflow.com/a/15332146/5224236

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