Как вывести эти данные в ggplot? - PullRequest
0 голосов
/ 14 февраля 2020

Это мои данные:

structure(list(Time = c(0L, 2L, 4L, 6L, 8L, 10L, 12L, 14L, 16L, 
18L), Volume.1 = c(14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 
14L), CO21 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Volume2 = c(13.5, 
13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5), CO22 = c(0L, 
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Volume3 = c(13.5, 13.5, 
13.5, 13.5, 13, 12.5, 12.5, 12, 12, 11.5), CO23 = c(0, 0, 0, 
0, 0.5, 1, 1, 1.5, 1.5, 2), Volume4 = c(13.5, 13.5, 13, 12.5, 
12, 11, 9, 7.5, 5.5, 4.5), CO24 = c(0, 0, 0.05, 1, 1.5, 2.5, 
4.5, 6, 8, 9)), row.names = c(NA, 10L), class = "data.frame")

Это данные для дрожжевого брожения для биолаборатории. Нам сказали использовать графическое программное обеспечение для построения графиков данных. Мне нужно сделать график, который показывает разницу в уровнях производства СО2 на трубу. Трубка 1 = Объем 1 + CO2, Трубка 2 = Объем 2 + CO22 и др. c. Я очень плохо знаком с R и не знаю, как поступить.

1 Ответ

1 голос
/ 14 февраля 2020

Может быть, это то, что вы ищете? Хотя уровни со2 на самом деле не сильно меняются во времени с каждой пробиркой, поэтому, возможно, я не понимаю, что вы пытаетесь изобразить.

library(tidyverse)

df <- data.frame(Time = c(0L, 2L, 4L, 6L, 8L, 10L, 12L, 14L, 16L, 18L), Volume1 = c(14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L), CO21 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Volume2 = c(13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5), CO22 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Volume3 = c(13.5, 13.5, 13.5, 13.5, 13, 12.5, 12.5, 12, 12, 11.5), CO23 = c(0, 0, 0, 0, 0.5, 1, 1, 1.5, 1.5, 2), Volume4 = c(13.5, 13.5, 13, 12.5, 12, 11, 9, 7.5, 5.5, 4.5), CO24 = c(0, 0, 0.05, 1, 1.5, 2.5, 4.5, 6, 8, 9))

df1 <-
  df %>%
  pivot_longer(cols = -Time) %>%
  mutate(name = str_replace(name, "(\\d)$", ",\\1")) %>%
  separate(name, c("name", "tube")) %>%
  group_by(Time, tube) %>%
  summarize(co2 = sum(value)) 

ggplot(df1, aes(x = Time, y = co2, color = tube)) + 
  geom_line() +
  geom_point()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...