Создайте пошаговый график из данных ie - PullRequest
0 голосов
/ 09 марта 2020

У меня есть набор данных, который выглядит примерно так:

depth <- c(300, 360, 420, 480, 500)
concentration <- c(-31.6, -31.8, -30.5, -34.2, -33.6)

dd <- dataframe(depth, concentration)

, с тем основным отличием, что мой реальный набор данных имеет длину 3500 строк. Есть ли способ получить набор данных, который позволил бы мне вместо этого построить их в «шаговом» графике, то есть преобразовать набор данных в нечто вроде этого, которое затем я смогу построить?

depth1 <-c(300, 360, 360, 420, 420, 480, 480 ...)
concentration 1 <- c(-31.6, -31.6, -31.8, -31.8, -30.5, -30.5, -34.2...)

?

1 Ответ

2 голосов
/ 09 марта 2020

Вы можете сделать

plot(depth, concentration, type = "s")

enter image description here

Или, если вы предпочитаете ggplot2, вы можете использовать geom_step:

library(ggplot2)

ggplot(dd) + geom_step(aes(x = depth, y = concentration))

enter image description here

Если вы просто хотите преобразование данных, которое даст вам координаты x, y шагов, вы можете сделать:

dd2 <- data.frame(depth = c(rep(depth, each = 2)[-1], NA), 
                  concentration = rep(concentration, each = 2))

Таким образом, если вы построите график с помощью type = "l", то есть в виде линейного графика, вы получите тот же результат:

plot(dd2$depth, dd2$concentration, type = "l")

enter image description here

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