r - r 散点图和回归线问题
问题描述
我正在尝试为此图创建回归线,为什么下面的代码不起作用?
这样做之后,我需要创建一个带有标签的自定义图例:名为“实际”的黑点和名为“预测”的蓝色短划线(对应于线)
library(ggplot2)
d1 <- c(20,30,40,50,60,70)
d2 <- c(23, 32,41,53,60,69)
df <- data.frame(d1, d2)
ggplot(df,aes(x=d1,y=d2)) +
geom_point(size=1.1)+
geom_smooth(method = "glm",
method.args = list(family = "binomial"),
se = FALSE)
解决方案
由于图表中因变量的值范围不在 0 和 1 之间,因此在geom_smooth()
族中不能是二项式,如来自以下的错误消息所述ggplot()
:
`geom_smooth()` using formula 'y ~ x'
Warning message:
Computation failed in `stat_smooth()`:
y values must be 0 <= y <= 1
如果我们使用 的默认值family=
,则打印回归线。
library(ggplot2)
d1 <- c(20,30,40,50,60,70)
d2 <- c(23, 32,41,53,60,69)
df <- data.frame(d1, d2)
ggplot(df,aes(x=d1,y=d2)) +
geom_point(size=1.1)+
geom_smooth(method = "glm",
se = FALSE)
注释绘图的一种方法是添加回归线和 R^2 信息。我们可以使用ggpubr
包及其stat_regline_equation()
功能来做到这一点。
library(ggpubr)
ggscatter(df, x = "d1", y = "d2", add = "reg.line",
add.params = list(color = "blue", fill = "lightgray")) +
stat_cor(label.x = 3, label.y = 70) +
stat_regline_equation(label.x = 3, label.y = 66)
...和输出:
推荐阅读
- php - 为什么有两个输入被发送到数据库而不是一个?
- r - 我有一份 grobs 清单。如何制作 glist 或 gtree?
- c++ - 如何在数组中间构造开始和结束迭代器?
- c# - Bool 参数不会通过脚本改变,动画不会播放 OnClick
- javascript - 加载页面上的所有图像并等待完成
- c++ - 如果在 C++17 中“删除”或“未声明”移动/复制构造函数/赋值,是否已确定?
- go - 从 Go 调用 DLL - 我做错了什么?
- java - 对象的内存大小(以字节为单位)
- c++ - 在 C++ 中,可以在同一类的 Accessor 函数内部调用私有成员函数,也可以不调用
- cron - 如何确定构建是否是 CircleCI 中的计划作业?