3
  1. 我有以下图表代码: barplot(as.vector(t(mat1[1,3:ncol(mat1)])),las=2) 我想更改,以便x轴被y = 2 行替换;有效地将x轴向上移动 2 个单位,如下图所示。 在此处输入图像描述

    我需要酒吧从 2 开始,以便:

    • 值为 3 的条形图从 y=2 线开始并上升到 y=3 处结束。
    • 值为 0 的条形图从 y=2 线开始,下降到 y=0 结束
  2. 如何使mat1我的x轴类别的列名?

4

2 回答 2

7

Barplot 总是从 0 开始它的条形图。从每个 y 值中减去 2(或我做的 5)。将 ylim 设置为范围(y 值 - 5)。您将需要禁止使用 yaxt="n" 绘制 y 轴。轴的 xpd 参数允许标签范围扩展到实际值范围以下。

 set.seed(231)
 tN <- table(Ni <- stats::rpois(100, lambda=5))
 tNshift <- tN-5
 barplot(tNshift, space = 1.5, yaxt="n", xaxt="n", ylim=range(tNshift))
 abline(0,0)
 axis(2, at= c(-5, pretty(tNshift)), labels=c(0, pretty(tNshift)+5), xpd=TRUE)

在此处输入图像描述

于 2012-04-07T22:16:16.733 回答
1

这是第一个示例?barplot,稍作修改,abline(x,y)添加了

require(grDevices) # for colours
tN <- table(Ni <- stats::rpois(100, lambda=5))

barplot(tN, space = 1.5, axisnames=FALSE)
abline(5,0)

在此处输入图像描述

抱歉,如果这没有回答您的具体问题,但我没有任何示例数据可供使用,所以我举了这个?barplot例子。

于 2012-04-07T20:42:32.967 回答