Редактировать ось Y в соответствии с зарегистрированными значениями - PullRequest
0 голосов
/ 07 мая 2019

Привет, у меня есть список данных, с такими данными:

Элемент 1 подмножество к 2018 году

    structure(list(year = c("2018", "2018", "2018", "2018", "2018", 
"2018", "2018", "2018", "2018", "2018", "2018", "2018"), month = c(1, 
2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), Avdischarge = c(906.5947917, 
511.2469444, 364.0697222, 268.3026389, 141.5931944, 142.0445486, 
37.53111111, 34.68916667, 35.50809028, 26.94083333, 40.400381945, 
312.0436806), IndustrialCompound = c(0.729166666666667, 0.815789473684211, 
0.818181818181818, 0.771428571428571, 0.736842105263158, 0.761904761904762, 
0.780487804878049, 0.829268292682927, 0.8, 0.780487804878049, 
0.738095238095238, 0.731707317073171), Pharmaceutical = c(0.145833333333333, 
0.105263157894737, 0.113636363636364, 0.142857142857143, 0.131578947368421, 
0.119047619047619, 0.121951219512195, 0.0975609756097561, 0.114285714285714, 
0.146341463414634, 0.166666666666667, 0.195121951219512), Pesticide = c(0.125, 
0.0789473684210526, 0.0681818181818182, 0.0857142857142857, 0.131578947368421, 
0.119047619047619, 0.0975609756097561, 0.0731707317073171, 0.0857142857142857, 
0.0731707317073171, 0.0952380952380952, 0.0731707317073171), 
    TotalOvershootings = c(0.48, 0.558823529411765, 0.619718309859155, 
    0.538461538461538, 0.612903225806452, 0.591549295774648, 
    0.561643835616438, 0.554054054054054, 0.538461538461538, 
    0.577464788732394, 0.617647058823529, 0.694915254237288)), row.names = 37:48, class = "data.frame")

Я хочу построить график разряда, поэтому я использовал

a <- ggplot(subset(counts[["HEE"]], year==2018), aes(x=month)) +
      geom_line(aes(y= Avdischarge, group=1), color='royalblue1', size=1.5, alpha=0.8) + 
      scale_x_continuous(breaks= counts[["HEE"]][["month"]])+
      scale_y_continuous(breaks = counts[["HEE"]][["Avdischarge"]])

и я получил это

example

1.Почему моя ось y показывает больше значений? Я просто хочу 12 значений разряда. Вероятно, из-за подмножества, а также показывает разряд других лет? Как я могу установить его только на 2018 год?

  1. Как я могу сделать расстояние между галочками равным?

В основном я хочу получить что-то вроде этого (только синяя линия)

discharge

Только зарегистрированные значения расхода находятся на оси Y, а расстояние между ними на графике одинаково. Я сделал это несколько месяцев назад и даже использовал тот же код и без scale_y_continuous, и я получил этот результат. Я не знаю, почему так больше не строится.

1 Ответ

1 голос
/ 07 мая 2019

Я думаю, что проблема заключается в вашем breaks аргументе. Это работает для меня:

ggplot(subset(dta, year==2018), aes(x=month)) +
  geom_line(aes(y= Avdischarge, group=1), color='royalblue1', size=1.5, alpha=0.8) + 
  scale_y_continuous(breaks = seq(20, 1000, by=50))

Я не уверен, какой у вас counts[["HEE"]][["Avdischarge"]], но вам просто нужно указать фактические значения, которые вы хотите показать (например, 20, 70, 120, ...)

...