Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何断开条形图中的轴(可能使用plotrix gap.barplot)?_R_Bar Chart_Axis - Fatal编程技术网

如何断开条形图中的轴(可能使用plotrix gap.barplot)?

如何断开条形图中的轴(可能使用plotrix gap.barplot)?,r,bar-chart,axis,R,Bar Chart,Axis,我发现了很多关于axis中的中断和缺口的问题和答案。但是,由于没有示例代码、图片或复杂的代码,它们中的大多数都是低质量的(在某种意义上)。这就是为什么我要问 我尝试使用库(plotrix)。如果有一个没有它和/或其他库的解决方案,我也可以 这是正常的R条形图 barplot(c(10,20,500)) 为了断开轴并增加间隙,我尝试了这个 gap.barplot(c(10,20,500),gap=c(50,400), col=FALSE) 结果并不美好 栏杆之间没有空隙space参数 这

我发现了很多关于axis中的中断和缺口的问题和答案。但是,由于没有示例代码、图片或复杂的代码,它们中的大多数都是低质量的(在某种意义上)。这就是为什么我要问

我尝试使用
库(plotrix)
。如果有一个没有它和/或其他库的解决方案,我也可以

这是正常的R条形图

barplot(c(10,20,500))

为了断开轴并增加间隙,我尝试了这个

gap.barplot(c(10,20,500),gap=c(50,400), col=FALSE)

结果并不美好

  • 栏杆之间没有空隙<
    gap.barplot()
    不接受
    barplot()
    中的code>space参数
  • 这些条有不同的宽度
  • “抽搐”的位置不在吧台中间。
我可以用
plotrix
控制这些参数吗?我在文档中没有看到关于它的内容。
我的问题还有其他的解决方案吗?

因为有很多单独的问题,所以有很多不同的答案。对于您的问题,您可以尝试以下方法。但总有更好的解决办法。在我看来,最好是显示完整的数据,而不是裁剪数据

# Your data with names
library(plotrix)
d <- c(10,20,500)
names(d) <- letters[1:3]
# Specify a cutoff where the y.axis should be splitted.
co <- 200
# Now cut off this area in your data.
d[d > co] <- d[d > co] - co
# Create new axis label using the pretty() function
newy <- pretty(d)
newy[ newy > co] <- newy[ newy > co] + co
# remove values in your cutoff. 
gr <- which(newy != co)
newy <- newy[ gr ]
# plot the data
barplot(d, axes=F)
# add the axis
axis(2, at = pretty(d)[gr], labels = newy)
axis.break(2, co, style = "gap") 
#您的数据和名称
库(plotrix)

d“在我看来,最好是显示完整的数据,而不是裁剪数据。”-同意!请看第9行。你确定那是对的吗?@buhtz我把它修好了。谢谢,代码很好。很容易理解那里发生了什么。非常感谢你!但这是一个技巧/解决办法。因此,似乎没有R解决方案,因为R人员不想剪切数据?:)