Вы можете начать со следующего кода.
Подготовьте ваши данные в виде фрейма данных, как показано ниже. Вы можете использовать read.csv
для чтения данных из файла CSV.
> data
Month season POC sd_min sd_max
1 June Pre Monsoon 125 114.0564 135.9436
2 July Southwest Monsoon 145 137.9181 152.0819
3 August Northeast Monsoon 155 151.0996 158.9004
4 September Northeast Monsoon 155 145.0982 164.9018
5 October Northeast Monsoon 156 152.6262 159.3738
6 November SouthwestMonsoon 152 134.6723 169.3277
7 December SouthwestMonsoon 100 98.3175 101.6825
8 January Pre Monsoon 150 143.3171 156.6829
9 February Pre Monsoon 110 107.9925 112.0075
10 March Pre Monsoon 153 148.8530 157.1470
11 April Pre Monsoon 148 144.7181 151.2819
12 May SouthwestMonsoon 146 141.7141 150.2859
ПРИМЕЧАНИЕ: data$Month
должен быть фактором с уровнями, упорядоченными в соответствии с порядком, требуемым на оси x графика.
data$Month <- factor(data$Month, levels = data$Month)
library(ggplot2)
ggplot(data, aes(x = Month, y = POC, group = 1)) + geom_line() + geom_point()
+ geom_errorbar(ymax = data$sd_max, ymin = data$sd_min, width = 0.25)
+ coord_cartesian(ylim = c(0.95 * min(data$sd_min), 1.05 * max(data$sd_max)),
expand = FALSE, clip = "off") + theme_bw()
Чтобы иметь второй слой с маркировкой по оси X, вы можете сослаться здесь и здесь