Scatterplot3d 可以处理小于 5columns/rows 的数据吗?

Scatterplot3d can handle data less than 5 columns/rows?

当数据少于5列或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轴中,添加了虚拟网格并重复相应的标签以覆盖额外的网格。有什么解决办法吗?

我会窃取@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 上的刻度数。