问题标签 [sjplot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1460 浏览

r - sjPlot - change plot line colors to black/white

I am plotting a regression model with sjPlot's plot_model(). I want to change my line colors from sjPlot theme (red & blue lines) to black & white or grayscale. However, when I utilize set_theme(theme_bw()), the plot appearance does not change (theme_bw is from ggplot2, according to the dropdown I see while typing the function).

The plot appearance however does change when I select one of the available sjPlot themes (theme_538, theme_blank, theme_sjplot and theme_sjplot2), which all render the lines red & blue, but change the plot background, so I think I got the function right.

How can I use a bw or gs theme or manually set the line colors to black & white for my plot?

ps: according to the sjPlot resources I find online, there should be more sjPlot themes available than those I see. That is strange. Moreover, I read that the set_theme() function should work with ggplot2 themes, which seems to not be the case here. Any ideas where the bug is? Maybe I am overseeing something very simple?

edit: I am using R version 3.5.0 and Rstudio version 1.1.383 Thank you!!

0 投票
1 回答
724 浏览

r - 从 sjPlot 包中更改 plot_model 中主持人的值

我试图在线性回归模型中创建两个变量对结果变量的交互影响图plot_model。我的模型中有一个交互项 (BLK70*FP59),但是当我使用时,type = "int"我得到“错误:模型中没有找到交互项”。

我可以得到我想要使用的情节type = "pred",但我想在交互中更改主持人术语(下面的 FP59)的值。我怎样才能做到这一点?请参见下面的示例:

plot_model文档中我可以看到该mdrt.values功能,但这不适用于type = "pred".

另外,如何为 FP59 的不同值添加更多行?

编辑:摘要数据来自以下dput(head(crimeExFilt, 20))。我删除了一个变量(名称),因为它与模型无关,而且我超出了字符数。

0 投票
2 回答
4094 浏览

r - 使用 sjPlot 从 glmer 模型中绘制随机斜率

过去,我曾使用sjPlotsjp.glmer包中的sjPlot来可视化广义混合效应模型中的不同斜率。但是,使用新软件包,我无法弄清楚如何绘制各个斜率,如图所示(随机)组级别的固定效应概率,位于此处

这是我认为应该允许生成图形的代码。我似乎无法在新版本的sjPlot.

我尝试使用以下代码绘制模型。

我认为我可能缺少一个标志,但是在阅读了文档之后,我无法找出那个标志可能是什么。

0 投票
1 回答
199 浏览

sjplot - sjPlot plot_model 线之间的距离

我使用 sjPlot 包和以下命令绘制了这个图:

我怎样才能改变这些线之间的距离。它们太近了,我不想让我的情节更广泛。

在此处输入图像描述

0 投票
0 回答
58 浏览

r - sjplot tab_df 中没有标签

我正在尝试使用 sjplot 和 tab_df 函数构建一个表,但无法获取表中的标签名称:

据我了解, sjplot 应该自动识别标签......

那么我做错了什么?

0 投票
0 回答
305 浏览

r - 使用 plot_model() 在原始尺度上绘制边际效应

我试图从一个模型(用 lme4 完成)绘制边际效应plot_model()

模型(同一模型的 2 个版本)看起来像

版本 1:

版本 2:

在这两个版本中,连续预测变量 X 和 Z 使用scale()函数进行缩放,但在版本 1 中,它在创建模型 m1 之前完成,并作为单独的列(Xs 和 Zs)保存在 中dataframe=dat,而在版本 2 中,它在模型中指定平方米

我现在的问题是如果我按原样绘制 m1

没有重新调整 x 轴的绘图

我想绘制 X 的边际效应,但不是 x 轴上 X 的缩放值,我想拥有我尝试过的原始值

myfun被定义为scale()

绘制一个

b地块

所以,这给了我两个不同的情节。由于情节 b 看起来类似于 m1 的情节而没有重新调整 x 轴,所以我会说情节 b 是正确的情节。但我不明白 term="..." 中的 "[myfun]" 是如何工作的以及它的作用。谢谢你的帮助!

0 投票
2 回答
378 浏览

r - 从 lme 或 lmerMod 对象绘制 R 中单个二次增长曲线的随机子集?

我想使用 ggplot2 或 sjPlot 从 R 中的 lme4 或 nlme 绘制 10 个个体的二次增长曲线的随机子集。我知道如何为线性线做到这一点,但不是二次线。显然,下面有 105 名参与者的情节太疯狂了。

我的模型:

输出:

所有曲线:

输出:

绘制所有 105 名参与者的图表

0 投票
0 回答
176 浏览

r - ggeffects & 虚拟编码;sjPlot 和优势比

我目前正在研究混合效应逻辑中一些固定效应因子的边际效应。为此,我使用ggpredict了非常有用的ggeffects软件包的功能。然后,我还使用tab_model关联sjPlot包的功能来生成包含奇数比的表格。然而,我对每个的输出有点惊讶:

1)我现在看到我的因子预测变量的所有级别都包含在输出中(与 R 通常的虚拟编码相反,其中每个因子的一个级别用作对比的参考)。是否可以在ggpredict输出中保留参考电平?我希望用它来 i) 检查手动计算和 ii) 将其与 glmer 模型系数进行比较,这些系数不是根据随机效应有条件地计算的。

2) 提供的优势比tab_model与我通过对原始glmer模型提供的系数求幂获得的优势比相同(根据 IDRE 示例程序)。但是,我的印象是,计算的 OR 是从边际系数得出的,这些系数没有考虑到我的模型中随机效应的影响(请参阅此处以“许多人喜欢”开头的段落,“预测概率和图形”此处的部分,以及此处的最佳答案以获取更多信息)。反过来,这是否意味着固定效应变量的 OR 由tab_model同样不考虑随机效应的影响?如果是这种情况,是否有论据或其他方法可以这样做?

谢谢!

0 投票
2 回答
198 浏览

r - ggplot2 或 sjPlot 和堆积条形图列

我在 MacBook Pro、OS 10.14.2 上运行 R 版本 3.5.2(2018-12-20)——“Eggshell Igloo”。

我尝试了几种方法来获取这些图。我的首选方法是尝试创建我的数据的堆叠条形图(因子随时间分组,我的 x 轴和计数为 y),每列中的二分变量计数为 0,1,因为它们与 y 上的计数匹配轴。不过我很灵活。如果我可以在上面覆盖一个条形图,我有这个代码可以工作。

使用我的完整数据集,我尝试了这个并且非常接近堆叠条形图,它给了我每个“yr”变量的正确计数,但是对于我的变量“n”它给了我一个连续的范围 0-1.0。

这是我最感兴趣的数据。然后我尝试将其强制转换为表格,然后转换为数据框。

然后我尝试了:

将这些替换为数据集变量给了我更糟糕的结果,y 轴显示“yr”变量每年没有计数,并且每列一直填充到“1”范围的顶部。

同样,我想在每年的列中获得一个带有二进制“n”的堆叠条形图,以显示应该与 y 轴上的“yr”计数匹配的 0/1 总和。或者,我可以使用我在发布的第一个代码中获得的 ggplot 并在那里获得每年的总和,我也会接受。

这真的很接近。如果它也给出了顶部的总数,那将是完美的。

包sjPlot:

sjPlot 代码的主要问题是我无法更改图例标签。它显示 n= 0, 1。我需要将其更改为具体。

提前非常感谢!

0 投票
1 回答
872 浏览

r - sjPlot R 包的森林图输出中的不同线条颜色

我正在使用sjPlot包准备带有回归系数的森林图。如何自定义回归系数的线条颜色以使每个系数具有一种颜色?

我曾尝试在 中使用该参数colors = c("blue", "red", "black")plot_model function但它不起作用。我也尝试将不同的调色板与 结合使用scale_color_manual,但它也不起作用。

以下是sjPlot包中的一个示例:

它给了我一个带有两条蓝线和一条红线的情节。剧情中没有黑线!

在此处输入图像描述

尝试使用其他方式没有帮助:

它实际上使用了 viridis 调色板,但同样是两条紫色线和一条黄色线。它返回以下消息:

“‘填充’的比例已经存在。为‘填充’添加另一个比例,它将取代现有的比例。” “‘颜色’的比例已经存在。为‘颜色’添加另一个比例,它将取代现有的比例。”

在此处输入图像描述

如果我colors = NULL在代码中设置,它不应该返回这些消息,应该吗?

对于为每个预测变量获得一种不同颜色的任何帮助,我将不胜感激。注意:此图将与具有相同预测变量的其他图相结合。因此,我希望它们在两个图中都具有相同的颜色以提高可读性。