【问题标题】:Label x and y axis values in plot with matrix cols and rows names使用矩阵列和行名称在绘图中标记 x 和 y 轴值
【发布时间】:2014-03-24 19:57:44
【问题描述】:

我有以下矩阵,然后我按照如下所示的间隔绘制它

mdat <- matrix(c(0.25,0.45,0.3, 0.75,0.15,0.62,0.40,0.90,1, 0.45,0.15,0), nrow = 4, ncol = 3, byrow = TRUE) 



plot(rep(1:4, 3), mdat, pch=15, cex=2.5,
                   col=c("red","orange","blue", "green")[findInterval(mdat, c(0,.25,.5,.75, 1.1))])

如图所示,它工作正常。

但是现在如果我定义

dimnames(mdat) <- list(  c("row1", "row2", "row3","row4"), c("col1", "col2", "col3"))

我需要在图中将 x 轴和 y 轴的值更改为 row1..row4 而不是值 0.0.. 1.0 和 col1.. col3 而不是 1.0.. 4.0

【问题讨论】:

  • 参见QuickR 轴部分。应该完全回答你的问题。
  • 我尝试定义 b
  • "如果您要创建自定义轴,您应该抑制由高级绘图功能自动生成的轴。选项 axes=FALSE 抑制 x 和 y 轴。xaxt="n"和 yaxt="n" 分别抑制 x 和 y 轴。 QuickR
  • 谢谢,抱歉我之前没有注意到。

标签: r


【解决方案1】:

你考虑过用 ggplot 做这个吗?只是一个建议...

library(ggplot2)
mdat <- data.frame(Y = c(0.25,0.45,0.3, 0.75,0.15,0.62,0.40,0.90,1, 0.45,0.15,0),
                   X = factor(c(rep("row1",3), rep("row2",3), rep("row3",3), rep("row4",3))))
mdat$Z <- factor(findInterval(mdat$Y, c(0,.25,.5,.75, 1.1)))
P <- ggplot(mdat, aes(x = X, y = Y)) + geom_point(aes(colour = Z), size = 11)
P + theme(axis.text.y = element_text(size = 20), axis.text.x = element_text(size = 20))

【讨论】:

  • 谢谢!我应该看看ggplot
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-29
  • 1970-01-01
  • 1970-01-01
  • 2015-03-10
  • 1970-01-01
  • 2022-01-09
  • 1970-01-01
相关资源
最近更新 更多