我需要在y轴上休息25,000到200,000。这是代码,我无法弄清楚为什么它没有给我我需要的y轴。我需要第一部分从0到25,000,步长为5,000,第二部分从200,000到200万,步长为500K。
x <- c(1000000, 5000000, 10000000, 15000000, 20000000, 25000000,
30000000, 35000000, 40000000, 45000000, 50000000, 55000000,
60000000, 65000000, 70000000, 75000000, 80000000, 85000000,
90000000, 95000000, 100000000)
y <- c(3305.8, 4175.4, 4175.4, 4201.7, 4201.7, 23529.4, 23529.4, 23529.4, 23529.4,
23529.4, 23529.4, 23529.4, 23529.4, 23529.4, 23529.4, 23529.4, 23529.4,
285714.3, 2000000.0, 2000000.0, 2000000)
library(plotrix)
gap.plot(x, y, gap = c(25000, 200000), gap.axis = "y", ylim = c(0, 2000000),
ytics = c(seq(0, 25000, by = 5000), seq(200000, 2000000, by = 500000)))
axis.break(axis = 2, breakpos = 25000, style = "slash")
答案 0 :(得分:1)
您可以为此问题创建一些解决方法。我假设你希望情节更具可读性。您可以减小非常大的值的大小,以使它们与较小的值更具可比性,同时保持原始轴标签。也就是说,
y2 <- ifelse(y>25000, y/100 + 25000, y)
gap.plot(x,y2,gap=c(25000,25000), gap.axis="y",ylim=c(0,2000000/100 + 25000),
ytics=c(seq(0,25000,by=5000),seq(27000,45000,by=5000)),
yticlab=c(seq(0,25000,by=5000),seq(200000,2000000,by=500000)))
axis.break(axis=2,breakpos=25000,style="slash")