当包中没有选项时,如何强制 panelView 更改线宽?

How to force panelView to change linewidth, when there is no option in the package?

我想更改 panelView 图的一些图形特征。在帮助菜单中,我没有找到相应的选项。

我不太喜欢包编程。但我猜他们是建立在其他软件包上的。也许 panelView 使用 ggplot2 或类似的可以通过变通方法访问的东西?我能以某种方式调整审美吗?

这是包中的 MWE。在这种情况下,线条太细了。

library(panelView) 
data(panelView) 
panelView(turnout ~ 1 + policy_mail_in + policy_motor, type="outcome",  
data = turnout, index = c("abb","year"))

如果您查看 panelView 的源代码,您会发现它硬编码线宽为 0.5。 panelView 函数并没有做太多花哨的事情(比如 require internals),因此您可以修改该函数以便有一个线宽参数。一个 hacky 解决方案,但确实存在。

我已经这样做了,但是函数代码>1300行,所以我不在这里重新发布它。相反,您可以从 here.

复制

现在,使用带有新参数 line.widthpanelView_B 函数,我们可以修改以下行:

library(panelView) 
data(panelView) 
panelView_B(turnout ~ 1 + policy_mail_in + policy_motor, type="outcome",  
          data = turnout, index = c("abb","year"), line.width = 1)