在TraMineR seqiplot中,如何将y轴上的数字更改为标签?

时间:2016-05-08 01:47:11

标签: r traminer

library('TraMineR')
data(mvad)
mvad.labels <- c("employment", "further education", "higher education",
                    "joblessness", "school", "training")
mvad.scodes <- c("EM","FE","HE","JL","SC","TR")
mvad.seq <- seqdef(mvad, 15:86, states=mvad.scodes, labels=mvad.labels)
seqiplot(mvad.seq, withlegend=F) 

生成enter image description here

我想将第一个序列标记为“2015_NSWDC_2”,依此类推。这可能吗?

1 个答案:

答案 0 :(得分:1)

可以使用seqiplot参数在ytlab中指定自定义标签。

最方便的方法可能是首先将标签指定为状态序列对象的行名,然后指定ytlab="id"以将行名称用作y标签。例如:

rownames(mvad.seq) <- paste0("seq",rownames(mvad.seq))
seqiplot(mvad.seq, ytlab = "id", ylas=1)

ylas=1选项是水平显示标签。

或者,您可以将标签向量直接传递为ytlab参数

mylabels <- paste0('y', 1:10)
seqiplot(mvad.seq, withlegend=F, ytlab=mylabels, ylas=1)

请注意,由于TraMineR 1.8.11中的错误,后一种解决方案会生成一个可以忽略的警告。