首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >触觉控制图例颜色::bwplot2 2

触觉控制图例颜色::bwplot2 2
EN

Stack Overflow用户
提问于 2018-10-08 01:40:08
回答 1查看 95关注 0票数 0

在下面这个带有触觉包的可复制示例中,将自动为方框和相应的图例选择颜色。不过,我想自定义的颜色盒情节和传奇。

代码语言:javascript
复制
tactile::bwplot2(runif(1000) ~ cut(runif(1000), c(0,0.3,0.6,1)) | as.factor(c(1,2,3)), 
             groups = sample(1:2, 1000, replace = TRUE), auto.key = TRUE)

但是,当我尝试这样做时,方框中的颜色发生了变化,但是传说中的颜色没有:

这里我创建了一个新的配色方案:

代码语言:javascript
复制
coolNewPars <- list(superpose.symbol = list(pch = 21, cex = 2, col = "gray20",
                           fill = continentColors$color))

然后再次绘制盒图,并指示auto.key将图例内容放置到2列中,并将par.settings设置为coolNewPars:

代码语言:javascript
复制
tactile::bwplot2(runif(1000) ~ cut(runif(1000), c(0,0.3,0.6,1)) | as.factor(c(1,2,3)), 
             groups = sample(1:2, 1000, replace = TRUE), auto.key = list(columns = 2),par.settings = coolNewPars)

如何强制图例颜色与coolNewPars颜色匹配?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-11 19:37:13

问题是lattice::panel.superpose()使用trellis.get.par("superpose.symbol")来区分组,而绘制键的函数使用"superpose.polygon"或类似的东西。

无论如何,这里有一个解决方案(虽然很尴尬):

代码语言:javascript
复制
coolNewPars <- list(superpose.polygon = list(col = 2:3),
                    superpose.symbol = list(fill = 2:3))

tactile::bwplot2(runif(1000) ~ cut(runif(1000), c(0,0.3,0.6,1)) | as.factor(c(1,2,3)), 
                 groups = sample(1:2, 1000, replace = TRUE), 
                 auto.key = TRUE,
                 par.settings = coolNewPars)

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

https://stackoverflow.com/questions/52694403

复制
相关文章

相似问题

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