ggplot2 画线性回归图

2023-10-30

本介绍如何使用R 可视化库 ggplot2 画拟合的线性回归模型。

语法

# ggplot(data,aes(x, y)) +
#   geom_point() +
#   geom_smooth(method='lm')

语法基本格式,其中还包括一些参数后面示例会涉及。

1. 简单示例

下面通过几个示例进行说明。

#create dataset
data <- data.frame(y=c(6, 7, 7, 9, 12, 13, 13, 15, 16, 19, 22, 23, 23, 25, 26),
                   x=c(1, 2, 2, 3, 4, 4, 5, 6, 6, 8, 9, 9, 11, 12, 12))

#fit linear regression model to dataset and view model summary
model <- lm(y~x, data=data)
summary(model)

library(ggplot2)

ggplot(data, mapping = aes(x, y)) + geom_point() + 
  geom_smooth(mothod="lm", se=FALSE )

在这里插入图片描述

se=FALSE 表示不显示置信区间,默认显示。

下面示例增加了一些主题样式:

#create regression plot with customized style
ggplot(data,aes(x, y)) +
  geom_point() +
  geom_smooth(method='lm', se=FALSE, color='turquoise4') +
  theme_minimal() +
  labs(x='X Values', y='Y Values', title='Linear Regression Plot') +
  theme(plot.title = element_text(hjust=0.5, size=20, face='bold')) 

在这里插入图片描述

2. 实际示例

mpg 是ggplot2包提供38种流行品牌汽车燃油消耗数据.
hwy :highway miles per gallon (每加仑英里数)
drv : the type of drive train, where f=front-wheel drive, r=rear wheel drive, 4=4wd
displ : engine displacement, in litres(发动机排量,以升为单位)
class : “type” of car (汽车类型)

我们还可以在geom_smooth中增加过滤条件:

ggplot(data = mpg,  mapping = aes(x = displ,  y = hwy)) +
  geom_point(mapping = aes(color = class)) +
  geom_smooth(data = filter(mpg,  class == "subcompact"),se = FALSE )

每种类型的点使用不同颜色。
在这里插入图片描述

下面示例对比不同驱动类型的趋势拟合情况,使用facet_wrap可以一次性画多个图进行对比:

ggplot(data = mpg) +
  geom_point(mapping = aes(x = displ,  y = hwy)) +
  geom_smooth(mapping = aes(x = displ, y = hwy, color=drv)) +
  facet_wrap(~ drv,  nrow = 1)

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ggplot2 画线性回归图 的相关文章

  • c++定义变量存放rsa密匙_解惑RSA

    RSA的算法 最好的文章是 somenzz 一文搞懂 RSA 算法 文章直接举例 让人很容易理解 RSA 中的 p q n m e d 的关系 一个关键点就是 n e 组成公钥 n d 组成私钥 公私钥并不是一个独立的大数 而是一个二元组

随机推荐

  • 低代码、中台化,中国ERP迎来产业变局

    对中国的ERP而言 在思维和观念背后 需要的是底层技术产品的重新解构和对生态的重新理解和构建 这对应的不单纯是面向客户层面的需求服务 更是对自身企业模型的优化调整 道阻且长 但值得肯定的是 它正在迈出更好的下一步 作者 斗斗 编辑 皮爷 出
  • docker从安装到部署项目,一篇文章教会你

    1 什么是Docker 首先看下 Docker 图标 一条小鲸鱼上面有些集装箱 比较形象的说明了 Docker 的特点 以后见到这个图标等同见到了 Docker 1 1 容器技术 1 Docker 是一个开源的应用容器引擎 它基于 Go 语
  • Android ViewModel,Lifecycles和LiveData组件讲解

    文章目录 一 ViewModel ViewModel基本用法 向ViewModel传递参数 二 Lifecycles 三 LiveData LiveData的基本用法 map和switchMap JetPack是一个开发组件工具集 他的主要
  • js empty() vs remove()

    转自 jQuery empty vs remove empty will remove all the contents of the selection remove will remove the selection and its c
  • 如何将MySQL中指定的表结构同步到人大金仓数据库

    场景 刚开始做数据库适配的时候 这是一个棘手的问题 因为MySQL的库里 表结构 字段都是最新的 但是金仓的库 全是旧版本的表结构 需要把我们模块的表结构 同步到金仓中 虽然金仓有数据库同步工具 但是直接把所有表都给同步过来 难免会影响到其
  • java使用flatbuffer基础篇

    先放上flatbuffer的github链接flatbuffer 里面可以直接下载针对模板文件生成代码exe程序和所有支持语言的库代码 之前写的一套系统是http的 里面也用到了websocket 但是服务器都是放在国外的 国内的电信运营商
  • 动态规划-国王与金矿

    动态规划 国王与金矿 图文有点长 慢慢看 题目 有一座高度是10级台阶的楼梯 从下往上走 每跨一步只能向上1级或者2级台阶 要求用程序来求出一共有多少种走法 比如 每次走1级台阶 一共走10步 这是其中一种走法 我们可以简写成 1 1 1
  • python+django学习资料在线分享系统vue

    本站是一个B S模式系统 采用vue框架作为开发技术 MYSQL数据库设计开发 充分保证系统的稳定性 系统具有界面清晰 操作简单 功能齐全的特点 使得校园资料分享平台管理工作系统化 规范化 技术栈 后端 python django 前端 v
  • kafka整合lua消费不到数据解决方案

    用lua脚本将前端页面获取到的数据塞给kafka kafka不报错 nginx不报错 lua脚本也没有问题 topic生成了但就是消费不到数据 自己写一个生产者测试过证明消费者也没问题 折腾了很久 最后在kafka配置文件中加了host n
  • springboot中jsp配置tiles

    tiles是jsp的前端框架 像fream标签一样可以把多个页面组合起来 完成后的目录结构 1 pom xml中添加依赖
  • 深度Linux怎样关闭休眠,deepin如何休眠,

    deepin如何休眠 deepin官网 休眠这个功能还是很酷很实用的 对于Linux系统 休眠一般就是把内存中的数据写入硬盘 swap文件 然后关机 在下一次开机的时候将数据重新载入内存 让你快速回到上一次的工作状态 这在你开启了大量的程序
  • NATAPP使用详细教程(免费隧道内网映射)

    NATAPP https natapp cn tunnel lists NATAPP 在开发时可能会有将自己开发的机器上的应用提供到公网上进行访问 但是并不想通过注册域名 搭建服务器 由此可以使用natapp 内网穿透 购买免费隧道 修改隧
  • 动手学强化学习Day1-基本概念

    文章目录 1 1 什么是强化学习 1 2 强化学习的环境 1 3 强化学习的目标 1 4 强化学习的数据 1 5 强化学习的特征 1 1 什么是强化学习 在机器学习领域 有一类重要的任务和人生选择很相似 即序贯决策 sequential 任
  • C++ win32编程 02 常见消息

    02 常见消息 1 打印消息相关信息 1 1 将消息内容转化为字符串 第一步 定义字符串变量 用来保存转化后的消息 wchar t szInfo 300 定义消息内容变量 第二步 用宽字符格式化函数转化消息内容 wsprintf szInf
  • Ethereum开发

    Ethereum开发 1 简介 1 下载源码 使用Git Bath git clone https github com ethereum go ethereum git 或者使用浏览器下载 2 下载安装包 根据您的系统选择下载 2 官方网
  • Pytorch+LSTM+Encoder+Decoder实现Seq2Seq模型

    usr bin env Python3 coding utf 8 version v1 0 Author Meng Li contact 925762221 qq com FILE torch seq2seq py Time 2022 6
  • sys中stdin与stdout

    如果需要更好的控制输出 而print不能满足需求 sys stdout sys stdin sys stderr就是你需要的 sys stdout与print 在python中调用print时 事实上调用了sys stdout write
  • 特征工程专题

    特征工程 Feature Engineering中文版 特征学习笔记 Fire 特征选择 缺失值处理 数据预处理 林逸飞
  • 嵌入式毕设分享100例(一)

    单片机毕业设计项目分享系列 这里是DD学长 单片机毕业设计及享100例系列的第一篇 目的是分享高质量的毕设作品给大家 包含全面内容 源码 原理图 PCB 实物演示 论文 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的单片机项目缺少
  • ggplot2 画线性回归图

    本介绍如何使用R 可视化库 ggplot2 画拟合的线性回归模型 语法 ggplot data aes x y geom point geom smooth method lm 语法基本格式 其中还包括一些参数后面示例会涉及 1 简单示例