R语言实战笔记--第十六章 高级图形进阶

2023-11-14

R语言实战笔记–第十六章 高级图形进阶

标签(空格分隔): R语言 lattice 交互式图形


图形系统简介

  本文为R语言实战中最后一章,介绍的是图形的高级进阶,主要讲述了两个包(lattice和ggplot2)以及交互式图形的做法,极大扩展了R的绘图功能,R中的图形系统主要有四种,base、grid、lattice和ggplot2。
  base不需要加载,直接可以使用,之前几乎所有的统计绘图都使用了这个包;grid需要手动加载,但因这个包并没有统计图形,因此书中没有介绍这个包的使用;lattice需要手动加载,它和前面两个包都是预装在R中,并不需要安装,直接加载即可,它提供栅栏图形的绘制;ggplot2包需要先安装,然后第一使用时先加载,提供一个全面的、基于语法的、连贯一致的图形生成系统,允许用户创建新颖的、有创新性的数据可视化图形。
  本书介绍的是后两个包。

lattice包

使用介绍

  先看一下函数的使用方式

graph_function(formula,data=,options)
graph_function:lattice包中的绘图函数;
formula:图形公式,和绘图函数一起由下表给出;
data:数据框
options:以逗号分隔的参数,由第二个一给出。

表1:绘图函数及绘图公式
注:表中小写字母代表数值变量,大字字母代表类别型变量

图形类型 函 数 表达式示例
三维等高线图 contourplot() z ~ x*y
三维水平图 levelplot() z ~ y*x
三维散点图 cloud() z ~x*y|A
三维线框图 wireframe() z~y*x
条形图 barchart() x ~ A或A ~ x
箱线图 bwplot() x ~ A或A ~ x
点图 dotplot() ~ x|A
直方图 histogram() ~ x
核密度图 densityplot() ~ x|A*B
平行坐标图 parallel() dataframe
散点图 xyplot() y ~ x|A
散点图矩阵 splom() dataframe
带状图 stripplot() A ~ x或x ~ A

表2:常见参数选项(options)

选 项 描 述
aspect 数值,设定每个面板中图形的宽高比
col、pch、lty、lwd 向量,分别设定图形中的颜色、符号、线条类型和线宽
Groups 用来分组的变量(因子)
index.cond 列表,设定面板的展示顺序
key(或auto.key) 函数,添加分组变量的图例符号
layout 两元素数值型向量,设定面板的摆放方式(列数和行数);如有需要,可以添加第三个元素,以指定页数,注意,是列数和行数,即layout=c(列数,行数)
Main、sub 字符型向量,设定主标题和副标题
Panel 函数,设定每个面板要生成的图形
Scales 列表,添加坐标轴标注信息
Strip 函数,设定面板条带区域
Split、position 数值型向量,在一页上绘制多幅图形
Type 字符型向量,设定一个或多个散点图的绘图参数(如p=点、l=线、r=回归、smooth=平滑
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R语言实战笔记--第十六章 高级图形进阶 的相关文章

  • RStudio 在临时目录中从 Rmarkdown 创建 PDF 文件

    我使用 RStudio 和 Rmarkdown 来创建报告 由于某种原因 使用 Knit 按钮会导致它仅在某个临时目录中创建 从命令输出来看 似乎 pandoc 本身被指示这样做 我觉得这很奇怪 usr lib rstudio bin pa
  • rmarkdown 中的内部链接不起作用

    我使用 rmarkdown 来渲染 pdf 文档 现在我想在文本中添加内部链接 在帮助页面中降价 http rmarkdown rstudio com authoring pandoc markdown html links 它说内部链接定
  • 将 data.frame 的列中的值替换为另一个 data.frame 中的值

    我的情况是 我有一个数据框 其中有一列填充了整数 1 到 6 我想用更具描述性的标签替换这些整数 这些标签在另一个充当 键 的数据框中提供 V1 V2 1 1 LABEL1 2 2 LABEL2 3 3 LABEL3 4 4 LABEL4
  • r : 直方图上的 ECDF

    在 R 中 与ecdf我可以绘制经验累积分布函数 plot ecdf mydata 与hist我可以绘制数据的直方图 hist mydata 如何在同一图中绘制直方图和 ecdf EDIT 我尝试做类似的东西 https mathemati
  • R:变换不规则时间字符串

    我有两个不同的时间序列 来自不同的数据帧 具有不同的不规则格式 但问题是相同的 我只想提取小时 分钟 秒和毫秒 时代系列看起来像这样 ts1 08 27 23 445 08 27 24 280 08 27 25 115 I tried st
  • 尽管提供了群落矩阵,纯素食 DBRDA 物种得分为空

    我使用纯素社区生态包在 R 中执行了 基于距离的冗余分析 dbRDA 我想在 dbRDA 结果的排序图中显示 鱼类 营养群体对样本之间差异 营养级鱼类组合的丰度数据 的相对贡献 IE 将箭头和营养级组名称叠加到排序图上 其中箭头线的长度表示
  • profvis() 何时以及为何显示“源不可用”?

    我经常分析 R 代码 并大量使用 profvis 对于某些函数 浏览器窗口的上半部分会显示源代码 有时则不会 我不知道什么时候会出现这种情况 对我来说这似乎是随机的 有谁知道 profvis 何时以及为什么无法在顶部窗口中显示代码 发生这种
  • 正则表达式挑选括号之间的一些文本[重复]

    这个问题在这里已经有答案了 可能的重复 提取 R 中所有括号内的信息 正则表达式 https stackoverflow com questions 8613237 extract info inside all parenthesis i
  • 将文本添加到 ggplot 中的轴标签

    我从下表中绘制了一个图表 BoatPhs fit se lower upper 1 Before 3 685875 0 3287521 3 038621 4 333130 2 After0 20NTA 3 317189 0 6254079
  • 在ggplot2中创建部分虚线

    我正在 R 中创建一个图 并且需要创建一条线 其中某些值是投影 投影用虚线表示 这是代码 df data frame date c rep 2008 2013 by 1 value c 303 407 538 696 881 1094 gg
  • 当子集长度为零时,如何简洁地处理子集?

    从向量中排除元素x x lt c 1 4 3 2 我们可以减去位置向量 excl lt c 2 3 x excl 1 1 2 这也是动态工作的 excl lt which x which max x gt quantile x 25 1 2
  • 如何在multilist中设置xlim?

    以下代码创建 3 个向量 并将它们显示为交错直方图 a lt c 1 2 3 b lt c 1 1 2 c lt c 1 1 1 l lt list a b c multhist l col c red green blue xlim c
  • 使用亚毫秒日期时间从字符->POSIXct->字符准确转换

    我的文件中有一个字符日期时间列 我加载文件 到data table 并执行需要将列转换为的操作POSIXct 然后我需要写POSIXct值返回文件 但日期时间不会相同 因为打印不正确 这个打印 格式问题是众所周知的 并且已经被讨论过多次 我
  • for 循环与 cor.test 在许多类别上

    我正在尝试在 R 中编写一个循环 它将循环遍历 3 个不同的物种 以计算两个连续变量 Redness 和 VarNormAbund 之间的相关性 我的循环正在运行 但 3 个物种中每一个的输出都是相同的 这让我认为循环卡在第一个物种上 co
  • 在 R Shiny 中显示/隐藏整个框元素

    我目前正在尝试找到一种方法来隐藏 显示 R Shiny 中的整个 box 元素 以及里面的所有内容 我想创建一个可能的按钮 它允许用户展开特定框 然后使用相同 甚至不同 的按钮隐藏它 我不想使用条件面板 因为我的应用程序非常大并且会产生一些
  • 如何将 mcmc.list 转换为 bugs 对象?

    我正在使用rjagsR 库 功能coda samples产生一个mcmc list 例如 来自example coda samples library rjags data LINE LINE recompile LINE out lt c
  • R:如何更改ggvis闪亮应用程序中特定范围的绘图背景颜色

    I have a simple shiny app like below and you can run it The plots are created by ggvis and user can choose student name
  • 如何处理包内部的 R 数据?

    我正在开发的 R 包需要多个 R 数据对象 例如预先计算的模型和参数 目前 我将包的 数据 目录中的每个对象放在单独的 RData 文件中 使用该包时 用户可以使用 数据 功能将这些对象附加到他们的环境中 我想要的行为是 在加载包时 数据对
  • R 在安装包依赖项时不考虑最大版本

    假设我正在开发一个名为magicr做一些统计魔术 我希望它使用另一个名为的包中的函数fairydust 假设 存在于 CRAN 上 很遗憾fairydust刚刚向 CRAN 发布了 2 0 0 版本 完全破坏了我计划使用的功能 所以我更新了
  • R Shiny - 使用 DataTable 移动列名称

    我有一个非常复杂的闪亮代码 其中有几个面板和这些面板内的几个表格 启动应用程序时 列名称与列值正确对齐 但是 一旦我更改应用程序表格下的页码 列名称就会移动到左侧 而值仍保留在中间 如何强制应用程序使列名称与列值对齐 一个可重现的例子 li

随机推荐

  • MySQL之索引的使用

    SQL CREATE INDEX 语法 在表上创建一个简单的索引 允许使用重复的值 CREATE INDEX index name ON table name column name 如果您希望以降序索引某个列中的值 您可以在列名称之后添加
  • Spring之BeanFactory学习笔记

    类图 一 注解 The root interface for accessing a Spring bean container BeanFactory 是获取IOC容器的根接口 提供了IoC容器所应该遵循的最基本的服务契约 IoC容器实际
  • DC综合完整脚本以及操作实例

    脚本最终成品 synopsys dc setup与syn script tcl 前面的文件定义各种库以及各种搜索路径 后者定义综合的约束以及输出结果文件 启动dc dc会自动的加载第一个文件 其中定义了各种路径以及库 默认用的是TSMC90
  • Vmware vSphere 5.0实战教程之一 vSphere高级应用测试环境搭建

    转载至 http andygao blog 51cto com 323260 839909 我们知道 vSphere的 vMotion HA FT等高级应用 必须在多网卡 独立存储的环境中使用 前面的系列教程中 详细的讲解了如何添加VMKe
  • STL函数模板入门

    Unit01 模板起源 01 C 为静态类型语言 这种语言有很多的数据类型 基本类型 类类型 在效率和类型安全上是无可比拟的 但这种语言在很大程度上也给程序员编写通用代码带来瓶颈 使程序员不得不为每一种数据类型编写完全相同或近乎完全相同的代
  • git提交代码会报 vue-cli-service lint found some errors. Please fix them and try committing again

    转载 https blog csdn net j15533415886 article details 92003047 转载 https blog csdn net qq 42180156 article details 10248098
  • web-view 调用微信小程序的方法

    1 1api文件夹下新建api js 获取微信公众号配置授权 后端提供接口 initConfig url gt return API GET api getJsapiSignature url url 1 2 utils文件夹下新建一个js
  • 数据结构day3(2023.7.17)

    一 Xmind整理 二 课上练习 练习1 时间复杂度 时间复杂度 只保留最高阶 f n 3 n 3 n 2 100 n T n O 3 n 3 n 2 100 n O 3 n 3 O n 3 1 gt O 1 常数阶 int t a 1 a
  • 使用百度地图JavaScript实现驾车/公交/步行导航功能

    1 2 3 4 5
  • 【语义分割】12、Fully Attentional Network for Semantic Segmentation

    文章目录 一 背景和动机 二 方法 三 效果 出处 AAAI2022 一 背景和动机 语义分割中 non local NL 的方法起到了很好了捕捉 long range 信息的作用 大致可分为 Channel non local 和 Spa
  • 使用insert into和insert overwrite插入数据的区别【Hive or Odps】

    1 创建一个测试表insert test 标识创建表insert test 默认新增id列 并插入一条数据1 CREATE TABLE insert test AS SELECT 1 AS id 2 插入数据 使用insert into插入
  • 记录:查看ubuntu版本信息。

    cat proc version uname a lsb release a WSL Ubuntu 20 04运行结果 lsb release a 查看Release和Codename uname a 内核版本和操作系统32 64位 cat
  • 32位机内存管理(下)

    既然这样 段描述符表放在那里呢 80386中引入了两个新的寄存器来管理描述符表 一个是48位的全局描述符表寄存器GDTR 一个是16位的局部描述符表寄存器LDTR 那么 为什么有两个描述符表寄存器呢 GDTR指向的描述符表为全局描述符表GD
  • 数据库原理 封锁的粒度

    1 封锁粒度是什么 封锁对象的大小称为封锁的粒度 封锁对象 逻辑单元 物理单元 2 选择封锁粒度的原则 封锁粒度和系统的并发度 系统的开销密切相关 封锁的粒度越大 数据库能够封锁的数据单元就越少 并发度就越小 系统开销也就越小 封锁的粒度越
  • Android三维模型解决方案

    1 原生OpenGL ES 无需多说 虽然OpenGL已经出来这么多年了 但无疑还是现在普及最广的 尤其在移动端 所以用原生OpenGL ES方案可以解决 2 jpct 最推荐 JPCT是一款基于OpenGL技术开发的3D图形引擎 PC环境
  • 数据迁移-jdbc

    1 jdbc工具类 import java io BufferedInputStream import java io FileInputStream import java io InputStream import java util
  • nginx的https和http共存反向代理配置

    一 设置http反向代理 正在上传 重新上传取消 upstream ly com server 192 168 1 100 88 server 192 168 1 101 88 upstream home ly com server 192
  • Git本地项目推送到远程仓库

    目录 1 初始化git 2 添加远程地址并给地址起一个别名 3 合并远程代码 4 推送 5 常见问题 6 无法推送 7 查看远程仓库信息 8 拉取与本地不相关的git项目 9 配置ssh公钥 1 初始化git 进入项目目录 git init
  • np.mgrid

    功能 返回多维结构 常见的如2D图形 3D图形 np mgrid 第1维 第2维 第3维 第n维的书写形式为 a b c c表示步长 为实数表示间隔 该为长度为 a b 左开右闭 或 a b cj cj表示步长 为复数表示点数 该长度为 a
  • R语言实战笔记--第十六章 高级图形进阶

    R语言实战笔记 第十六章 高级图形进阶 标签 空格分隔 R语言 lattice 交互式图形 图形系统简介 本文为R语言实战中最后一章 介绍的是图形的高级进阶 主要讲述了两个包 lattice和ggplot2 以及交互式图形的做法 极大扩展了