#r #ggplot2
Вопрос:
У меня есть график плотности, показывающий количество трафика и посещений животных в разное время дня. Что я хотел бы видеть, так это количество автомобилей в разных точках на линии. Имея ограниченные навыки в r, я прочитал другие темы здесь, на сайте, и другие, но мне трудно понять, как именно я должен это делать. Как я понял до сих пор, мне нужно было бы вычислить среднее значение каждого бина на графике, и я поиграл с этим кодом, но без особого успеха:
ggplot(speed, aes(x=time_rad, y=LENGTH))
geom_point()
stat_summary_bin(fun = "mean",
geom="bar",
binwidth=1
)
Это код для моего графика, в который я хотел бы включить вычисления средних:
ggplot(df, aes(x=TimeRad_enter1))
geom_density(aes(color=Focal_species))
geom_density(data=speed, aes(x=time_rad))
labs(y="Density", x="Time of day", title="Density of visits over the day")
scale_x_continuous(labels =c("00:00", "07:38", "15:16", "22:56"))
theme(axis.text = element_text(size=16, color="black"),
text = element_text(family="serif"),
title = element_text(size=20),
legend.text = element_text(size=14))
Это структура моих данных о скорости:
'data.frame': 783463 obs. of 11 variables:
$ DETECTORREF : Factor w/ 2 levels "se-lm-lv108n-viltbokeberg2",..: 1 2 2 2 2 2 2 2 2 1 ...
$ DETECTORNUM : int 1 1 1 1 1 1 1 1 1 1 ...
$ SOURCE_DATE : Date, format: "2020-07-08" "2020-07-08" ...
$ SOURCE_TIME : chr "12:11:07" "12:11:12" "12:11:15" "12:11:16" ...
$ RECEIVED_DATE: Date, format: "2020-07-08" "2020-07-08" ...
$ RECEIVED_TIME:Formal class 'Period' [package "lubridate"] with 6 slots
.. ..@ .Data : num 7 12 15 16 18 20 29 51 54 2 ...
.. ..@ year : num 0 0 0 0 0 0 0 0 0 0 ...
.. ..@ month : num 0 0 0 0 0 0 0 0 0 0 ...
.. ..@ day : num 0 0 0 0 0 0 0 0 0 0 ...
.. ..@ hour : num 12 12 12 12 12 12 12 12 12 12 ...
.. ..@ minute: num 11 11 11 11 11 11 11 11 11 12 ...
$ SPEED : num 87 74 75 74 75 75 78 78 77 75 ...
$ LENGTH : num 460 1400 1400 1400 1400 1400 560 560 560 460 ...
$ DIRECTION : int 0 0 0 0 0 0 0 0 0 0 ...
$ DateTime : POSIXct, format: "2020-07-08 12:11:07" "2020-07-08 12:11:12" ...
$ time_rad : num 3.19 3.19 3.19 3.19 3.19 ...
Вот как выглядит график:
на графике, который у меня еще есть, черная линия представляет транспортные средства
Было бы полезно иметь ось справа, показывающую среднее значение суммы.
Вы можете мне помочь? Был бы очень признателен. Заранее спасибо!
Комментарии:
1. Добро пожаловать в SO! Можно ли было бы создать воспроизводимый пример и рассказать нам, как должна выглядеть ожидаемая диаграмма?
2. Добавлен график и еще кое-что. Помогает ли это?
3. Мне жаль, но я не могу помочь в этом вопросе. ggplot плохо работает со вторичной осью, если только это не линейное преобразование первой. Есть некоторые обходные пути, но это утомительная работа…
4. Ага, хорошо, в любом случае спасибо!