1

当数据少于 5 列或行时,就会出现虚拟网格。有可能避免这种情况吗?

set.seed(123)
my.mat <- matrix(runif(20), nrow = 4)
dimnames(my.mat) <- list(LETTERS[1:4], letters[11:15])
s3d.dat <- data.frame(columns = c(col(my.mat)),
                  rows = c(row(my.mat)), value = c(my.mat))
scatterplot3d(s3d.dat, type = "h", lwd = 5, pch = " ",
          x.ticklabs = colnames(my.mat), y.ticklabs = rownames(my.mat))

上面的代码根据 scattorplot3d vignettes 中的示例稍作修改,并将生成以下图。

在此处输入图像描述

在 y 轴上,添加了虚拟网格,并重复相应的标签以覆盖额外的网格。有什么想法可以解决吗?

4

1 回答 1

2

我将窃取@CathG 的雷声并向您展示如何指定 x 和 y 刻度的数量。

scatterplot3d(x, type = "h", lwd = 5, pch = " ", lab = c(length(colnames(my.mat)), length(rownames(my.mat))),
              x.ticklabs = colnames(my.mat), y.ticklabs = rownames(my.mat))

请注意,我指定了一个lab参数来指定 x 和 y 上的刻度数。 在此处输入图像描述

于 2015-09-02T12:03:56.513 回答