R语言绘制散点图

news2024/10/6 11:37:47

散点图是一种在直角坐标系中用数据点直观呈现两个变量之间关系、可检测异常值并探索数据分布的可视化图表。它是一种常用的数据可视化工具,我们通过不同的参数调整和包的使用,可以创建出满足各种需求的散点图。

常用绘制散点图的函数有plot()函数和ggplot2这个R包首先我们来了解一下plot函数的绘制。

0x01 plot()函数

1.使用 plot()函数绘制基本散点图。

x <- c(1, 2, 3, 4, 5)
y <- c(2, 4, 6, 8, 10)
plot(x, y)

2.可以添加标题、坐标轴标签、点的形状、点的大小、颜色等。

plot(x, y, main = "Scatter Plot", xlab = "X Axis", ylab = "Y Axis")

主要参数:
type:指定图形的类型。
main:设置标题
sub:设置副标题
xlab、ylab:设置x、y轴标题
col:设置图形的颜色
cex:设置点的大小
pch:设置点的形状
lwd:设置点边框/线的宽度
xlim、ylim:设置坐标轴区间的范围
legend():在图形中添加图例。
points():在原有图形上添加点

type常见的取值有:
“p”:点(默认值)。
“l”:线。
“b”:同时有点和线。
“o”:点覆盖在线上。
“h”:直方图式的垂直线。
“s”:阶梯图。
“n”:不绘制任何图形,但设置坐标轴范围,通常用于后续添加图形。

PCH对照表

0x02 使用 ggplot2包

1.首先加载 ggplot2包。

library(ggplot2)

2使用 ggplot()函数创建绘图对象,然后添加 geom_point()层来绘制散点图。

# 创建示例数据
data <- data.frame(
  x = c(1, 2, 3, 4, 5),
  y = c(5, 4, 3, 2, 1),
  category = c("A", "B", "A", "B", "A")
)

# 使用 ggplot2 绘制散点图
ggplot(data, aes(x = x, y = y, color = category)) +
  geom_point() +
  labs(title = "Scatter Plot with ggplot2", x = "X Axis", y = "Y Axis")

ggplot2包提供了更强大的自定义功能,可以调整点的颜色、大小、形状等属性,以及添加拟合线、平滑曲线等。

一、基本图形参数
1.data:指定用于绘图的数据框。
2.mapping:通常通过aes()函数指定,用于将数据变量映射到图形的美学属性上,如aes(x = var1, y = var2, color = var3)
3.geom:指定几何对象,如geom_point()表示绘制散点图,geom_line()表示绘制线图等。

二、图形外观参数
1.color:设置图形元素的颜色,如线条颜色、点的颜色等。可以是单一颜色名称(如 “red”)或根据数据变量动态分配颜色。
2.fill:用于填充图形元素的内部颜色,如柱状图的柱子填充颜色。
3.size:设置点的大小、线条的粗细等。
4.alpha:设置图形元素的透明度,取值范围从 0(完全透明)到 1(完全不透明)。
5.shape:设置指定图形中点的形状。
6.scale_*:用于控制图形的各种属性的标度,如scale_color_*:用于控制颜色的标度,scale_color_manual() 允许你手动指定颜色映射,scale_color_gradient() 用于创建连续的颜色渐变。

三、坐标轴参数
1.xlimylim:分别设置横坐标和纵坐标的范围。例如xlim = c(0, 10)设置横坐标范围为 0 到 10。
2.xlabylab:分别设置横坐标和纵坐标的标签。
3.scale_x_*scale_y_*:用于定制坐标轴的刻度、类型等。例如scale_x_log10()将横坐标设置为对数刻度。

四、标题和标签参数
1.ggtitle:设置图形的标题。
2.labs:可以一次性设置多个标签,如labs(title = "My Plot", x = "X Axis Label", y = "Y Axis Label")

五、主题参数
1.theme:用于定制图形的整体外观,包括背景颜色、网格线、字体等。例如theme_minimal()使用简约主题。
2.theme_void:去除所有的背景元素和坐标轴,只显示数据元素。

六、分面参数
facet_wrapfacet_grid:用于将图形按照一个或多个变量进行分面展示,以便更好地比较不同组的数据。例如facet_wrap(~category)将图形按照category变量进行分面。

这只是ggplot2的一部分参数,通过灵活组合这些参数,可以创建出各种精美的可视化图形。
shape对照表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2191800.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

图解IP分类及子网掩码计算实例

一、什么是IP地址 在网络世界中&#xff0c;人们为了通信方便给每一台计算机都事先分配一个类似电话号码一样的标识地址&#xff0c;即IP地址。根据TCP/IP协议&#xff0c;IP地址由32位二进制数组成&#xff0c;而且在INTERNET范围内是唯一的。假如某台计算机IP地址为11000000…

基于SpringBoot vue 医院病房信息管理系统设计与实现

博主介绍&#xff1a;专注于Java&#xff08;springboot ssm 等开发框架&#xff09; vue .net php python(flask Django) 小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设&#xff0c;从业十五余年开发设计教学工作☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找…

SpringBoot+ElasticSearch7.12.1+Kibana7.12.1简单使用

案例简介 本案例是把日志数据保存到Elasticsearch的索引中&#xff0c;并通过Kibana图形化界面的开发工具给查询出来添加的日志数据&#xff0c;完成从0到1的简单使用 ElasticSearch职责用法简介 ElasticSearch用在哪 ElasticSearch在我这个案例中&#xff0c;不是用来缓解增…

牛市以一个什么视角看它?

这波指数行情连续上涨&#xff0c;我说过我没有任何情绪波动&#xff0c;我不想称之为牛市&#xff0c;而是一个增量周期&#xff0c;这样的话我的语言里尽量去除一些欲望和情绪的表达&#xff0c;有利于去给大家讲一些股市的客观存在规律&#xff1b;我们知道熊市的本质是什么…

重庆数字孪生工业互联网可视化技术,赋能新型工业化智能制造工厂

重庆作为西南地区的重要工业基地&#xff0c;正积极探索和实践数字孪生、工业互联网及可视化技术在智能制造领域的深度融合&#xff0c;致力于打造新型工业化智能制造工厂&#xff0c;为制造业的高质量发展注入强劲动力。 在重庆的智能制造工厂中&#xff0c;数字孪生技术被广…

为什么要学习大模型?AI在把传统软件当早餐吃掉?

前言 上周末在推特平台上有一篇写在谷歌文档里的短文&#xff0c;在国外的科技/投资圈得到了非常广泛的浏览&#xff0c;叫做 The End of Software&#xff08;软件的终结&#xff09;&#xff0c; 作者 Chris Paik 是位于纽约市的风险投资基金 Pace Capital 的创始合伙人&…

【预备理论知识——2】深度学习:线性代数概述

简单地说&#xff0c;机器学习就是做出预测。 线性代数 线性代数是数学的一个分支&#xff0c;主要研究向量空间、线性方程组、矩阵理论、线性变换、特征值和特征向量、内积空间等概念。它是现代数学的基础之一&#xff0c;并且在物理学、工程学、计算机科学、经济学等领域有着…

字符串和字符数组(2)

6.求字符串长度 C语言中有一个库函数叫strlen&#xff0c;这个函数是专门用来求字符串长度的。strlen的使用需要包含一个头文件string.h。 strlen函数统计的是字符串中\0之前的字符个数&#xff0c;所以传递给strlen函数的字符串中必须得包含\0. 请看代码&#xff1a; #inc…

AFSim仿真系统 --- 系统简解_04 Mystic(“情报处理模块”或“智能决策支持系统”)

Mystic应用 Mystic应用&#xff08;Mystic&#xff09;是一个主要的WSF应用程序&#xff0c;用于可视化模拟结果和统计数据。 当在场景中提供event_pipe命令块时&#xff0c;模拟结果将被记录。event_pipe块会创建AFSIM事件录制文件&#xff08;.aer&#xff09;&#xff0c;…

家政服务|基于springBoot的家政服务平台设计与实现(附项目源码+论文+数据库)

私信或留言即免费送开题报告和任务书&#xff08;可指定任意题目&#xff09; 目录 一、摘要 二、相关技术 三、系统设计 四、数据库设计 五、核心代码 六、论文参考 七、源码获取 一、摘要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数…

璞华科技×珠海采筑:通过SRM系统实现采购管理一体化和精细化

SRM供应商关系管理应该怎么做&#xff1f;如何实现采购管理一体化&#xff1f;近日&#xff0c;聚焦建材采购交易领域的服务商珠海采筑和SRM系统提供商璞华科技通过合作给出了一个现实的回答&#xff1a;通过SRM系统&#xff0c;聚焦使用者视角&#xff0c;以数据为主线&#x…

二分算法详解

1. 二分查找 704. 二分查找 这是一道单纯的朴素二分模版题&#xff0c;当 left right 时的这种情况也是需要考虑的&#xff0c;因为不排除数组中只有一个数的情况&#xff0c;或者是二分到数组中只剩一个数的情况&#xff0c;所以循环条件要写 left < right class Soluti…

批量复制文件技巧:高效管理,一键复制至指定位置

当需要处理大量文件时&#xff0c;批量复制功能能显著提升工作效率。通过文件管理器或专业的文件处理软件&#xff0c;用户可以一次性选择多个文件或文件夹进行复制操作&#xff0c;无需逐个手动操作&#xff0c;大大节省了时间。还可以实现更复杂的批量处理任务。 1.打开“文件…

Qt开发技巧(十四)文字的分散对齐,设置动态库路径,进度条控件的文本,文件对话框的卡顿,滑块控件的进度颜色,停靠窗体的排列,拖拽事件的坑

继续讲一些Qt开发中的技巧操作&#xff1a; 1.文字的分散对齐 有时候需要对文本进行分散对齐显示&#xff0c;相当于无论文字多少&#xff0c;尽可能占满整个空间平摊占位宽度&#xff0c;但是在对支持对齐方式的控件比如QLabel调用 setAlignment(Qt::AlignJustify | Qt::Align…

移动硬盘无法读取?详解原因与数据恢复方案

一、移动硬盘无法读取现象描述 在日常生活中&#xff0c;移动硬盘作为我们存储和传输数据的重要工具&#xff0c;扮演着不可或缺的角色。然而&#xff0c;有时我们会遇到移动硬盘无法读取的情况&#xff0c;这给我们的数据使用带来了极大的困扰。当我们将移动硬盘连接到电脑或…

LLM大模型学习精要系列(一):掌握基础,开启大模型之旅

1.前言 1.1 基础模型研究 2023 年&#xff0c;随着 LLM 技术的发展&#xff0c;中国模型研究机构的开源模型迎来了爆发式的增长&#xff1a; 2023 年 3 月&#xff0c;智谱 AI 首先在魔搭社区发布了 ChatGLM-6B 系列&#xff0c;ChatGLM-6B 是一个开源的、支持中英双语问答的…

【EXCEL数据处理】000001 案列 条件格式之大于,小于,介于,等于。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。

【EXCEL数据处理】000001 案列 条件格式之大于,小于,介于,等于。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来&#xff0c;方便查看。 &#x1f4da;一、直接上案例 &#x1f4d6;1.EXCEL条件格式之大于,案列。标记值大于1500000的值为粉红色。 &a…

【游戏模组】重返德军总部2009高清重置MOD,建模和材质全部重置,并且支持光追效果,游戏画质大提升

各位好&#xff0c;今天小编给大家带来一款新的高清重置MOD&#xff0c;本次高清重置的游戏叫《重返德军总部2009》2009年发布&#xff0c;我相信很多玩家已经玩过了&#xff0c;如果你还没有玩过我也可以和你简单介绍一下剧情&#xff0c;这款游戏故事背景接续在《重返德军总部…

memset二维数组

1135 用 sizeof d sizeof d[] sizeof N*4 都是错误的。 void dijkstra(int s,int d[]) {memset(d,0x3f,N*4);memset(st,0,sizeof st);d[s]0;priority_queue<PII,vector<PII>,greater<PII>>q;q.push({0,s});while(q.size()){auto tq.top();q.pop();in…

AI大模型开发智能机票助手源码

智能机票助手&#xff1a;使用 Spring AI Alibaba 构建 在本篇文章中&#xff0c;我们将探讨如何使用 Spring AI Alibaba 框架来构建一个智能机票助手。这个助手将能够帮助用户完成机票预订、解答问题、改签和取消等服务。 项目概述 智能机票助手的目标是利用 AI 技术来提升…