Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
BWDROOT的箱线图lwd参数的等效值_R_Plot_Lattice_Bwplot - Fatal编程技术网

BWDROOT的箱线图lwd参数的等效值

BWDROOT的箱线图lwd参数的等效值,r,plot,lattice,bwplot,R,Plot,Lattice,Bwplot,我想用粗线条画这个方框。在boxplot函数中,我简单地将lwd=2放在格子bwplot中,我可以把头发拔出来,但还没有找到解决方案! (我指的是上图中蓝色的东西) 要使用的示例代码: require(lattice) set.seed(123) n <- 300 type <- sample(c("city", "river", "village"), n, replace = TRUE) month <- sample(c("may", "june"), n, replac

我想用粗线条画这个方框。在
boxplot
函数中,我简单地将
lwd=2
放在格子
bwplot
中,我可以把头发拔出来,但还没有找到解决方案! (我指的是上图中蓝色的东西)

要使用的示例代码:

require(lattice)
set.seed(123)
n <- 300
type <- sample(c("city", "river", "village"), n, replace = TRUE)
month <- sample(c("may", "june"), n, replace = TRUE)
x <- rnorm(n)
df <- data.frame(x, type, month)

bwplot(x ~ type|month, data = df, panel=function(...) {
    panel.abline(h=0, col="green")
    panel.bwplot(...)
})
require(晶格)
种子集(123)

n您可以做的一件事是获取长方体的网格设置,然后更改这些设置。试一试

rect.settings<-trellis.par.get("box.rectangle") #gets all rectangle settings
rect.settings$lwd<-4  #sets width to 4, you can choose what you like
trellis.par.set("box.rectangle",rect.settings)

rect.settings正如John Paul指出的,线宽由lattice图形参数列表的
box.rectangle
box.umbrane
组件控制。(对于将来的引用,键入<代码>名称(Tr.L.Par .GET())是扫描列表所控制的图形属性列表的一种快速方法)。 以下是一种稍微简洁的方法,可以为一个或多个特定图形设置这些选项:

thickBoxSettings <- list(box.rectangle=list(lwd=2), box.umbrella=list(lwd=2))

bwplot(x ~ type|month, data = df, 
       par.settings = thickBoxSettings,
       panel = function(...) {
           panel.abline(h=0, col="green")
           panel.bwplot(...)
       })

thickBoxSettings晶格图还有一个特性需要提及。它们实际上是对象,因此存在修改其列表表示的方法

myBW <- bwplot(x ~ type|month, data = df, panel=function(...) {
    panel.abline(h=0, col="green")
    panel.bwplot(...)
})
newBW <- update(myBW, par.settings=list(box.rectangle=list(lwd=4) ))
plot(newBW)   # need to print or plot a grid object

myBW谢谢Josh!天哪,为什么晶格如此反直觉!我已经花了将近两个小时来做这个,就在我在会议上做演讲之前最糟糕的时间压力下!只有皮蒂知道我离线了,不能在这里问。谢谢,德温!天哪,为什么晶格如此反直觉!我已经花了将近两个小时来做这个,就在我在会议上做演讲之前最糟糕的时间压力下!只有皮蒂知道我离线了,不能在这里提问。这是一个完全不同的(在某种程度上是面向对象的)绘图范例。它是为更强大的功能而设计的,它确实需要采用一种更注重列表的思维方式。嗯,真的,但是当文档安排得不是很好,而且内容也不直观时,它是如此令人沮丧。。例如,
help.search(“box.rectangle”)
不返回任何内容。这将是完美的,有一些文档,只是一个图片的样本图和所有这些参数的名称,你需要设置…是的。我理解。我认为买萨卡尔的书花的钱是值得的。它有很好的讨论和绘制参数名称的有用图表。当我开始阅读
帮助('lattice-package',package=“lattice”)
页面时,我想知道为什么我以前没有这样做。