1

我正在尝试制作一个“相反的堆积条形图”,并且pyramid.plotplotrix包装中发现似乎可以完成这项工作。(我很感激ggplot2将成为你们中的一些人的首选解决方案,但我希望base在这个上坚持使用图形。)

不幸的是,当我尝试将限制设置为非整数值时,它似乎对 x 轴做了一件奇怪的事情。如果我让它自动定义限制,它们是整数,在我的情况下,它只会留下太多的空白。但是将它们定义为xlim=c(1.5,1.5)会产生下面的奇怪结果。

如果我从文档中正确理解,则无法传递其他图形参数以例如抑制轴并稍后添加它,或者更不用说定义刻度点等。有没有办法让它更灵活?

这是一个用于生成下图的最小工作示例。

require(plotrix)
set.seed(42)
pyramid.plot(cbind(runif(7,0,1),
                   rep(0,7),
                   rep(0,7)),
             cbind(rep(0,7),
                   runif(7,0,1),
                   runif(7,0,1)),
             top.labels=NULL, 
             gap=0,
             labels=rep("",7),
             xlim=c(1.5,1.5))

在此处输入图像描述

以防万一其他人感兴趣,我不是在做人口金字塔,而是尝试使用一些值为负数的堆积条形图。上面的代码包含一个“技巧”,我使用它可以使每边有不同数量的条形集,即向矩阵添加空列,希望有人会发现这很有用 - 很抱歉,工作示例不是本来可以最小的!

4

1 回答 1

2

laxlab使用和raxlab创建连续轴设置 x 轴标签:

pyramid.plot(cbind(runif(7,0,1),
                   rep(0,7),
                   rep(0,7)),
             cbind(rep(0,7),
                   runif(7,0,1),
                   runif(7,0,1)),
             top.labels=NULL, 
             gap=0,
             labels=rep("",7),
             xlim=c(1.5,1.5),
             laxlab = seq(from = 0, to = 1.5, by = 0.5),
             raxlab=seq(from = 0, to = 1.5, by = 0.5))

在此处输入图像描述

于 2014-10-01T14:58:27.867 回答