R 在绘图中打断x轴
我想破坏累积分布函数的x轴,我使用函数R 在绘图中打断x轴,r,plot,R,Plot,我想破坏累积分布函数的x轴,我使用函数plot.stepfun,但似乎无法弄清楚如何进行 以下是一些示例数据: set.seed(1) x <- sample(seq(1,20,0.01),300,replace=TRUE) 我将x.cdf的类更改为stepfun,因为我更喜欢直接调用plot.stepfun,而不是使用plot.ecdf(它也使用plot.stepfun,但定制绘图的可能性较小) 但是现在我想在12和20之间分解x轴,例如使用axis.break[plotrix lib
plot.stepfun
,但似乎无法弄清楚如何进行
以下是一些示例数据:
set.seed(1)
x <- sample(seq(1,20,0.01),300,replace=TRUE)
我将x.cdf
的类更改为stepfun,因为我更喜欢直接调用plot.stepfun
,而不是使用plot.ecdf
(它也使用plot.stepfun
,但定制绘图的可能性较小)
但是现在我想在12和20之间分解x轴,例如使用axis.break
[plotrix library],例如,但是由于我没有用于打印的普通x和y参数,我不知道如何进行此操作
任何帮助都将不胜感激 “在12和20之间断开轴”对我来说没有多大意义,因为20是x范围的终点,所以我将举例说明在12和15之间断开轴。plotrix.axis.break函数实际上做的不多(如果您仔细阅读该示例,可以看到这一点)。它所做的只是在特定位置“breakpos”上放两条斜线。所有其余的工作都需要使用常规的plot函数和plot.stepfun来完成,因此我使用的是带有type=“s”参数的regular plot.default。您需要对x值、ecdf函数的参数以及轴参数中的标签进行偏移
png()
plot( c(seq(1,12,0.1), seq(15,20,0.1)-3), # Supply the range, shifted
x.cdf(c(seq(1,12,0.1), seq(15,20,0.1))), # calc domain values, not shifted
type="s", xaxt="n", xlab="X", ylab="Quantile")
axis(1, at=c( 1:12, (16:20)-3), labels=c(1:12, (16:20)) ) #shift x's, labels unshifted
axis.break(breakpos=12)
dev.off()
由于20是x范围的终点,因此“在12和20之间断开轴”对我来说没有多大意义,因此我将举例说明在12和15之间断开轴。plotrix.axis.break函数实际上做的不多(如果您仔细阅读该示例,可以看到这一点)。它所做的只是在特定位置“breakpos”上放两条斜线。所有其余的工作都需要使用常规的plot函数和plot.stepfun来完成,因此我使用的是带有type=“s”参数的regular plot.default。您需要对x值、ecdf函数的参数以及轴参数中的标签进行偏移
png()
plot( c(seq(1,12,0.1), seq(15,20,0.1)-3), # Supply the range, shifted
x.cdf(c(seq(1,12,0.1), seq(15,20,0.1))), # calc domain values, not shifted
type="s", xaxt="n", xlab="X", ylab="Quantile")
axis(1, at=c( 1:12, (16:20)-3), labels=c(1:12, (16:20)) ) #shift x's, labels unshifted
axis.break(breakpos=12)
dev.off()
plot(x.cdf, do.point=FALSE)
png()
plot( c(seq(1,12,0.1), seq(15,20,0.1)-3), # Supply the range, shifted
x.cdf(c(seq(1,12,0.1), seq(15,20,0.1))), # calc domain values, not shifted
type="s", xaxt="n", xlab="X", ylab="Quantile")
axis(1, at=c( 1:12, (16:20)-3), labels=c(1:12, (16:20)) ) #shift x's, labels unshifted
axis.break(breakpos=12)
dev.off()