GGplot 2 — геометрическая линия оси x соответствует действительности в масштабе?

#r #ggplot2

#r #ggplot2

Вопрос:

Я пытаюсь построить график геометрической линии концентраций образцов с течением времени, используя ggplot2. По оси y показана концентрация, а по оси x — время взятия пробы в часах.

Вот набор данных:

 dput(data_M1_summary)
structure(list(Mean_M1.mg.mL. = c(2.02877, 1.88472, 1.975485, 
1.981743), Median_M1.mg.mL. = c(2.124, 2.043, 1.992, 1.981), 
Storage_time.h. = c("1", "12", "48", "72")), row.names = c(NA, 
-4L), class = "data.frame")
 

Вот мой код, который я использовал для построения линейного графика:

 data_M1_summary$Mean_M1.mg.mL. <- as.numeric(data_M1_summary$Mean_M1.mg.mL.)
data_M1_summary$Median_M1.mg.mL. <- as.numeric(data_M1_summary$Median_M1.mg.mL.)
data_M1_summary

ggplot(data_M1_summary, aes(x=`Storage_time.h.`, y=Median_M1.mg.mL., fill=Storage_time.h.)) 
geom_line(group=1, linetype= "dashed") 
geom_point() 
xlab("Storage time [h]") 
ylab("Median Concentration [mg/mL]") 
ggtitle(label = "Median Ampicillin degradation in Material 1 (PC LSR-40)") 
theme_minimal()
 

Примерный график

Моя проблема в том, что на оси x отображаются только 4 различных значения «1 час», «12 часов», «48 часов» и «72 часа» с равными пробелами между каждой меткой. Мне нужна ось x с точностью до масштаба, где расстояние между метками отражает прошедшее время, т. Е. Расстояние между 1 и 12 часами меньше, чем расстояние между 12 и 48 часами.
В идеале, ось x также показывала бы промежуточные часы, то есть 1 час-5 часов-10 часов и т.д.

Комментарии:

1. Попробуйте с преобразованием Storage_time. h к числовому значению. Поскольку это символ, вы получаете категориальную ось.

2. @stefan большое вам спасибо! Какую глупую ошибку я там допустил, я должен был решить это сам — спасибо!