当前位置: 首页 > news >正文

R语言学习case10:ggplot基础画图Parallel Coordinate Plot 平行坐标图

step1: 导入ggplot2库文件

library(ggplot2)

step2:带入自带的iris数据集

iris <- datasets::iris

step3:查看数据信息

dim(iris)

维度为 [150,5]

head(iris)

查看数据前6行的信息
在这里插入图片描述

step4:利用ggplot工具包绘图

plot5 <- ggparcoord(data = iris,columns = 1:4,groupColumn = "Species",scale = "center")+theme_bw(base_size = 14)+theme(plot.title = element_text(hjust = 0.5),legend.position = "bottom")+ggtitle("平行坐标图")+labs(x = "")plot5

这段代码使用了 ggparcoord 函数来创建一个平行坐标图。以下是代码的解释:

  1. ggparcoord(data = iris, columns = 1:4, groupColumn = "Species", scale = "center"):这一部分调用了 ggparcoord 函数,用于创建平行坐标图。参数 data 指定了数据集,这里使用了 iris 数据集。参数 columns 指定了要在平行坐标图中显示的列,这里选择了第1到第4列,即花萼长度、花萼宽度、花瓣长度和花瓣宽度。参数 groupColumn 指定了用于分组的列,这里选择了 Species 列,表示按照不同的鸢尾花种类分组。参数 scale 指定了数据的缩放方式,这里选择了 “center”,表示将数据缩放到中心。

  2. theme_bw(base_size = 14):这一部分设置了绘图的主题为白色背景的基本主题,同时设置了基本字体大小为 14。

  3. theme(plot.title = element_text(hjust = 0.5), legend.position = "bottom"):这一部分进一步调整了绘图的主题。plot.title 参数设置了图表标题的水平对齐方式为居中,legend.position 参数设置了图例的位置在图表的底部。

  4. ggtitle("平行坐标图"):这一部分为图表添加了标题为 “平行坐标图”。

  5. labs(x = ""):这一部分移除了 x 轴的标签,因为在平行坐标图中通常不需要 x 轴的标签。

在这里插入图片描述

step5:平滑的平行坐标图

plot6 <- ggparcoord(data = iris, columns = 1:4,groupColumn = "Species",scale = "globalminmax",splineFactor = 50,order = c(4,1,2,3))+theme_bw(base_size = 14)+theme(plot.title = element_text(hjust = 0.5),legend.position = "bottom")+ggtitle("Smoothed Parallel Coordinate Plot 平滑的平行坐标图")+labs(x = "")plot6

在这里插入图片描述

这段代码使用了 ggparcoord 函数来创建一个平滑的平行坐标图。以下是代码的解释:

ggparcoord(data = iris, columns = 1:4, groupColumn = "Species", scale = "globalminmax", splineFactor = 50, order = c(4,1,2,3)):这一部分调用了 ggparcoord 函数,用于创建平滑的平行坐标图。参数 data 指定了数据集,这里使用了 iris 数据集。

参数 columns 指定了要在平行坐标图中显示的列,这里选择了第1到第4列,即花萼长度、花萼宽度、花瓣长度和花瓣宽度。

参数 groupColumn 指定了用于分组的列,这里选择了 Species 列,表示按照不同的鸢尾花种类分组。

参数 scale 指定了数据的缩放方式,这里选择了 “globalminmax”,表示将数据缩放到全局最小和最大值之间。

参数 splineFactor 指定了平滑度的因子,这里设置为 50。

参数 order 指定了列的显示顺序,这里设置为花瓣宽度、花萼长度、花萼宽度和花瓣长度的顺序。

http://www.lryc.cn/news/294303.html

相关文章:

  • Easy Excel动态表头的实现
  • kvm qemu 优化 windows 虚拟机速度
  • 银行数据仓库体系实践(18)--数据应用之信用风险建模
  • 每日一练 | 华为认证真题练习Day179
  • [ubuntu]add-apt-repository 添加以及移除
  • PySpark(二)RDD基础、RDD常见算子
  • 修改MFC图标
  • springboot158基于springboot的医院资源管理系统
  • 【算法】枚举——蓝桥杯、日期统计、特殊日期(位数之和)、2023、特殊日期(倍数)、跑步锻炼
  • 基于flask的个人博客项目从0到1
  • 基于OpenCV灰度图像转GCode的单向扫描实现
  • JAVA生成Word文档
  • python将.db数据库文件转成Excel文档
  • [opencvsharp]C#基于Fast算法实现角点检测
  • 群晖NAS开启FTP服务结合内网穿透实现公网远程访问本地服务
  • ReactNative实现弧形拖动条
  • STM32F407移植OpenHarmony笔记9
  • telnet笔记
  • 【考研408】操作系统笔记
  • 从0开始搭建、上传npm包
  • 【Go】在 JSON 中解析 time.Duration
  • UE4 C++ UGameInstance实例化
  • 在工业制造方面,如何更好地实现数字化转型?
  • 【MySQL】-10 MySQL 存储过程
  • 3.闭包 - JS
  • Java实现批量视频抽帧2.0
  • MFC 原生LsitCtrl单元格嵌入图标
  • 黑马头条 - minio
  • 认识Tomcat (一)
  • SSH免密切换服务器案例-ssh协议(公钥和私钥)