用R重命名脊柱图中的因子

时间:2011-05-11 11:07:06

标签: r plot

是否可以在factor中重命名spineplot?我的因素的名称很长,所以它们重叠。

感谢您的建议!

1 个答案:

答案 0 :(得分:2)

阅读spineplot的帮助,很明显您可以传递参数yaxlabelsxaxlabels来控制轴的注释向量。

一个有用的函数是abbreviate,它会缩短字符串。

将此信息与spineplot示例相结合,可以得到:

treatment <- factor(rep(c(1, 2), c(43, 41)), levels = c(1, 2),
    labels = c("placebo", "treated"))
improved <- factor(rep(c(1, 2, 3, 1, 2, 3), c(29, 7, 7, 13, 7, 21)),
    levels = c(1, 2, 3),
    labels = c("none", "some", "marked"))

spineplot(improved ~ treatment, yaxlabels=abbreviate(levels(improved), 2))

enter image description here

并非R中的所有绘图函数都具有此类参数。对于更通用的解决方案,可能需要在传递给绘图函数之前重命名因子。您可以使用levels函数访问和修改因子名称:

levels(treatment) <- abbreviate(levels(treatment), 5)
plot(improved ~ treatment)

enter image description here