首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TramineR图例位置和轴

TramineR图例位置和轴
EN

Stack Overflow用户
提问于 2020-02-28 12:48:23
回答 1查看 430关注 0票数 2

我和TraMineR一起工作,我不知道怎么安排我的情节。所以基本上,我想要的是,图解下面的图解,移除x和y轴之间的空间。欢迎任何帮助。

情节:

样本代码:

代码语言:javascript
复制
seqdplot(Activities.seq, with.legend=FALSE)

legend("bottom", legend=attr(Activities.seq, "labels"), 
       fill=attr(Activities.seq, "cpal"), 
       inset=-.1, bty="o", xpd=NA, cex=.75,ncol=3)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-29 14:35:28

seqplot函数家族提供了一系列参数来控制图例和轴。查看seqplot的帮助页面(关于特定的seqdplot参数,查看plot.stslist.statd )。

例如,您可以用axes=FALSE来抑制x轴,用yaxis=FALSE抑制y轴.

要打印图例,可以让seqdplot使用默认的with.legend=TRUE选项自动显示它,并控制它,例如字体大小为cex.legend,文本为ltext。还可以使用ncol参数来设置图例中的列数。

默认情况下,seqplot函数使用layout来组织情节和图例之间的图形区域。如果需要进行更多的微调(例如,更改绘图和图例周围的默认par(mar=c(5.1,4.1,4.1,2.1))边距),则应分别创建绘图和图例,然后使用例如layoutpar(mfrow=...)自行组织它们。在这种情况下,应该通过设置with.legend=FALSE来创建单独的图形,这将阻止图例的显示,并禁用layout的自动使用。

颜色图例是最容易获得与seqlegend

我用mvadTraMineR附带的数据来说明。首先是图例的默认情节。注意使用border=NA来抑制太多的垂直黑线。

代码语言:javascript
复制
library(TraMineR)
data(mvad)
mvad.scode <- c("EM", "FE", "HE", "JL", "SC", "TR")
mvad.seq <- seqdef(mvad, 17:86, 
                   states = mvad.scode,
                   xtstep = 6)

# Default plot with the legend, 
seqdplot(mvad.seq, border=NA)

现在,我们抑制x和y轴并修改图例的显示。

代码语言:javascript
复制
seqdplot(mvad.seq, border=NA,
         axes=FALSE, yaxis=FALSE, ylab="",
         cex.legend=1.3, ncol=6, legend.prop=.11)

下面是如何控制图形与x和y轴之间的空间

代码语言:javascript
复制
seqdplot(mvad.seq, border=NA, yaxis=FALSE, xaxis=FALSE, with.legend=FALSE)
axis(2, line=-1)
axis(1, line=0)

分别创建图例,并减少图例周围的左、顶和右边距。

代码语言:javascript
复制
op <- par(mar=c(5.1,0.1,0.1,0.1))
seqlegend(mvad.seq, ncol=2, cex=2)
par(op)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60452044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档