显示y轴ggplot中的每个中断

时间:2019-05-06 14:04:11

标签: r ggplot2 axis-labels

我有这个数据框

   year   month Avdischarge 
37 2018     1    740.5200          
38 2018     2    376.8050          
39 2018     3    269.2800         
40 2018     4    195.8825         
41 2018     5    100.9800          
42 2018     6     99.5775

我想在y轴上显示放电的确切值。 当我用

绘制时
q<-ggplot(data, aes(month, Avdischarge, group= 1))+ 
  geom_line(color='royalblue1', size=1.5, alpha=0.9)

我进入y轴200、400、600。

但是我想显示我每个月都匹配的六个放电值。
我可以添加什么?

1 个答案:

答案 0 :(得分:3)

如果使每次放电的y轴都断裂,则实际上最终会导致标签相互堆叠,这对绘图用户来说不是很有用。我建议在每个点上放置标签标记,以便在保持y轴清洁的同时仍将信息传达给用户。请参阅下面的代码:

library(tidyverse)

dat <- tribble(~"year",   ~"month", ~"Avdischarge",
 2018,     1,    740.5200,          
 2018,     2,    376.8050,          
 2018,     3,    269.2800,         
 2018,     4,    195.8825,         
 2018,     5,    100.9800,          
 2018,     6,     99.5775)

ggplot(dat, aes(month, Avdischarge, group= 1))+ 
    geom_line(color='royalblue1', size=1.5, alpha=0.9) +
    scale_y_continuous(breaks = dat$Avdischarge)


ggplot(dat, aes(month, Avdischarge, group= 1))+ 
    geom_line(color='royalblue1', size=1.5, alpha=0.9) +
    geom_point(color='royalblue1') + 
    geom_text(aes(label = Avdischarge), 
              nudge_y = 15, nudge_x = .2, color='royalblue1') + 
    scale_x_continuous(breaks = 1:6)

reprex package(v0.2.1)于2019-05-06创建

您可以使用nudge_xnudge_y来获得所需标签的确切位置。