如何在R中将plot(effect(...))生成的绘图背景颜色更改为灰色并带有白色网格?

问题描述 投票:0回答:1

我的 R 代码:

model0_1 <- lm(average_count ~ green_text  + brand_names, data = data)
eff <- effect("green_text", model0_1)

我尝试绘制 green_text 的主要效果:

plot(eff,
 x.var = "green_text",
 xlab = "Types of Tweets",
 ylab = "Average Count",
 main = "Types of Tweets on Average Count",
 colors = c("#1A9F12"),
 grid = TRUE
)

我尝试将绘图的背景更改为带有白色网格的灰色,这样看起来更好。然而,我有点失去了实现它的方法。 我试过了

rect(usr[1], usr[3], usr[2], usr[4], col = "lightgrey", border = NA)

但我的 jupyter 笔记本总是返回“Error in rect(usr[1], usr[3], usr[2], usr[4], col = "lightgrey", border = NA):plot.new 尚未被调用还”。

为了解决这个问题,我尝试了

plot(eff,
 x.var = "green_text",
 xlab = "Types of Tweets",
 ylab = "Average Count",
 main = "Types of Tweets on Average Count",
 colors = c("#1A9F12"),
 grid = TRUE)

plt.new() 
rect(usr[1], usr[3], usr[2], usr[4], col = "lightgrey", border = NA)

但是随后绘图和灰色背景被分成两部分。 我还看到一种说法:{effects}图是基于r的{lattice},所以设置

par()
不会有任何效果。有谁知道如何在
plot(effect(...))
的基础上实现这一点?非常感谢。

r plot background-color effect
1个回答
0
投票

这已经很接近了。这些是

lattice
图,因此您需要深入研究
?plot.effect
的文档和
lattice
包文档 (
?lattice::trellis.par.set
) 进行微调

library(effects)
lattice::trellis.par.set("panel.background", list(col = "gray"))
m1 <- lm(mpg ~ hp, data = mtcars)
e1 <- effect("hp", m1)
plot(e1, axes = list(grid = TRUE))
© www.soinside.com 2019 - 2024. All rights reserved.