删除ggplot中的中断之间的刻度

时间:2019-06-21 13:45:36

标签: r ggplot2

我想创建在x轴上具有不规则中断间隔的折线图。当按照代码示例中的定义中断时,我会得到其他未标记的中断,这些中断似乎总是恰好位于两个已定义的中断中间,因此也是不规则的(请参见链接中的图像)。

test_frame <- data.frame("v1"=1:3,"v2"=3:1)

library(ggplot2)
ggplot(data = test_frame, aes(x=v1, y=v2, group=1))+geom_line()+
scale_x_continuous(breaks = c(2.74,2.43,1.19))

带有其他中断的图形:

Graph with additional breaks

是否有任何方法可以消除这些垂直线,以便仅在定义的中断位置处存在线?如有任何建议,我将不胜感激。

2 个答案:

答案 0 :(得分:3)

设置pop = pd.read_csv('./maps/API_SP.POP.TOTL_DS2_en_csv_v2_10576638.csv', header=None, engine='python', skiprows=4) display(pop) years = ['1.970000e+03','1.980000e+03','1.990000e+03','2.000000e+03','2.010000e+03','2.015000e+03', 'Country Name'] pop[pop.columns[pop.isin(years).any()]]

minor_breaks = NULL

enter image description here

答案 1 :(得分:2)

ggplot(data = test_frame, aes(x = v1, y = v2, group = 1)) +
  geom_line() +
  scale_x_continuous(breaks = c(2.74, 2.43, 1.19)) +
  theme(panel.grid.minor = element_blank()) # or panel.grid.minor.x to keep horizontal lines

enter image description here