R语言数据可视化教程(ggplot2)_输入图形以展示

R语言ggplot2教程 十张图带你入门ggplot2 ggplot2入门教程,散点图、折线图、直方图柱状图 阅读详情

# 第14章 输出图形用以展示
# 一般而言,数据可视化为两个目标服务:发现和沟通。
# 14.1 输出为PDF矢量文件
# 有两种方法输出PDF文件。一种方法是,使用pdf()打开图形设备,绘制图形,然后使用dev.off()关闭图形设备。这种方法适用于R中的大多数图形,包括基础图形和基于网格的图形
# width(宽度)和height(高度)的单位为英寸
library(ggplot2)
pdf("3dplot.pdf",width=4,height=4)
# 绘制图形
plot(mtcars$wt,mtcars$mpg)
print(ggplot(mtcars,aes(x=wt,y=mpg))+geom_point())
dev.off()
# 如果绘制的图形多于一副,则每一副将在PDF输出中列于独立的一页。注意,针对ggplot()对象调用了print(),以确保这段代码即使是在一段脚本中也能输出图形。
# width和height的单位为英寸,要以厘米为单位则需要手动转换
# 8x8cm
pdf("3dplot.pdf",width = 8/2.54,height = 8/2.54)
# 如果使用ggplot2()创建图形,则使用ggsave()可简单地保存使用ggplot()创建的最后一幅图形
ggplot(mtcars,aes(x=wt,y=mpg))+geom_point()
# 默认单位为英寸
ggsave("3dplot.pdf",width = 8,height = 8,units = "cm")
# ggsave()不能用于创建多页的图形
# PDF文件一般比位图文件小,因为PDF文件包含的是一系列的指令


# 14.2 输出为SVG矢量文件
# SVG文件在创建和使用方法上与PDF文件基本相同
svg("3dplot.svg",width = 4,height = 4)
plot(...)
dev.off()
# 使用ggsave()
ggsave("3dplot.svg",width = 8,height = 8,units = "cm")
# 当涉及导入图像时,某些程序可能在处理SVG方面比PDF要好些,Web浏览器一般有着更好的SVG支持,而文档创建程序,如LeTeX,则一般有着更好的PDF文件
# 14.3输出为WMF矢量文件
# WMF文件在创建和使用的方法上与PDF文件基本相同——但这种格式的图形文件只能在Windows上创建
win.metafile("3dplot.wmf",width = 8,height = 4)
plot(...)
dev.off()
# 使用ggsave()
ggsave("3dplot.wmf",width = 8,height = 8,units = "cm") 
# Windows下的程序,如Word和PPT对PDF文件的导入支持较差,但都原生支持WMF格式的。WMF格式的一个缺点是不支持透明
# 14.4 编辑矢量格式的输出文件
# 由Inkscape或Adobe Illustator打开PDF和SVG文件
# 当使用Inkscape打开PDF文件时,字体支持可能是一个问题。一般来说,使用PDF设备绘制的点对象将被编码为Zapf Dingbats字体中的符号。
# 要避免该问题,设置参数useDingbats=FALSE即可。
pdf("3dplot.pdf",width = 8,height = 4,useDingbats = FALSE)
# 或者
ggsave("3dplot.pdf",width = 8,height = 4,useDingbats=FALSE)
# 14.5 输出为点阵(PNG/TIFF)文件
# 有两种方式可以输出PNG点阵文件。一种方法是使用png()打开PNG图形设备,绘制图形,然后使用dev.off()关闭设备。
# width和height的单位为像素
png("3dplot.png",width = 100,height = 400)
# 绘制图形
plot(mtcars$wt,mtcars$mpg)
dev.off()
# 要输出多幅图性,可在文件名中加入%d。对于后续图形,这个位置将被1,2,3替代
# width和height的单位为像素
png("3dplot-%d.png",width = 100,height = 400)
plot(mtcars$wt,mtcars$mpg)
print(ggplot(mtcars,aes(x=wt,y=mpg))+geom_point())
dev.off()
# 默认的输出分辨率为每英寸72像素,对于高质量的打印输出,分辨率应至少为300ppi。
ppi <- 300
# 计算一副4英寸*4英寸300ppi图像的高度和宽度(以像素为单位)
png("3dplot-%d.png",width = 4*ppi,height = 4*ppi,res = ppi)
plot(mtcars$wt,mtcars$mpg)
dev.off()
# 使用ggsave()
ggplot(mtcars,aes(x=wt,y=mpg))+geom_point()
# 默认的宽高单位是英寸
ggsave("3dplot.png",width = 8,height = 8,units = "cm",dpi = 300)
# R也支持其他的点阵图形格式,如BMP、TIFF和JPEG。
# 点阵输出设备可能在Windows,linux和Mac OS X上对相同图形渲染出不同的效果。
# 如果平台缺乏对像抗锯齿和alpha通道之类特性的支持,可以使用Cairo包中的CairoPNG()设备
install.packages("Cairo")
CairoPNG("3dplot.png")
plot(...)
dev.off()


# 14.6 在PDF文件中使用字体
# extrafont包可用于创建包含其他字体的PDF文件
# 首先是一些一次性的软件安装和配置。下载并安装Ghostscript,然后执行
install.packages("extrafont")
library(extrafont)
# 查找并保存系统中已安装字体的信息
font_import()
# 列出字体
fonts()
# 在一次性的安装和设置完成后,需要在每个新的R会话中执行:
library(extrafont)
# 在R中注册字体
loadfonts()
# 在Windows上,可能需要指定Ghostscript的安装位置
Sys.setenv(R_GSCMD="C:/Program Files/gs/gs9.05/bin/gswin32c.exe")
# 最后创建PDF文件并向其中嵌入字体
library(ggplot2)
ggplot(mtcars,aes(x=wt,y=mpg))+geom_point()+ggtitle("Title text goes here")+theme(text = element_text(size = 16,family = "Impace"))
ggsave("myplot.pdf",width = 4,height = 4)
embed_fonts("myplot.pdf")
# PDF规范中指定了14中“核心”字体。这些字体是每个PDF渲染器都拥有的,其中包括标准字体,如Times、Helvetica和Courier。
# 非核心字体可以被嵌入到PDF中,即PDF文件本身可以包含一份希望使用字体的副本。


# 14.7 在Windows的点阵或屏幕输出中使用字体
# extrafont包可以用于创建点阵或屏幕输出。过程与使用extrafont处理PDF文件类似,除了不需要Ghostscript以外,一次性的安装过程几乎是相同的。
install.packages("extrafont")
library(extrafont)
# 查找并保存系统中已安装字体的信息
font_import()
# 列出字体
fonts()
# 在每个新的R会话中执行:
library(extrafont)
# 注册Windows中的字体
loadfonts("win")
# 最后创建输出文件或在屏幕上显示图形
library(ggplot2)
ggplot(mtcars,aes(x=wt,y=mpg))+geom_point()+ggtitle("Title text goes here")+theme(text = element_text(size = 16,family = "Georgia",face = "italic"))
ggsave("myplot.png",width = 4,height = 4,dpi = 300)
# 点阵图形与PDF图形在字体的处理方式上是完全不同的

# 在Windows上,对于点阵输出,必须手动在R中注册每一个字体,而在Mac OS X和Linux上,对于点阵输出,字体应该是直接可用的,并不需要手工注册它们。

数据可视化 -----ggplot2绘制箱线图叠加散点图和连线 ggplot2绘制箱线图叠加散点图和连线 准备输入文件 这里提供示例输入文件样式: sample percent group Cancer 0.10991479 1 Cancer 0.196776537 2 Cancer 0.163551093 3 Cancer 0.089305767 4 Cancer 0.629499967 5 Health 0.306427109 1 Health 0.139... 阅读详情

相关推荐

R语言—ggplot2包的简单教程

ggplot2包的简单教程

houjienanhai1025的博客 7232

用R的igraph包来画蛋白质互作网络图 | PPI | protein protein interaction network | Cytoscape...

igraph语法简单,画图快速。 Cytoscape专业,个性定制。   最终效果图:  当然也可以用Cytoscape来画。       参考:Network visualization with R Cytoscape http://www.360doc.com/content/17/0305/22/19913717_634279918.shtml  ...

weixin_34352449的博客 7509

R语言ggplot2数据可视化

R数据科学 - ggplot2数据可视化

Mannie的博客 2318

R语言空间数据分析学习笔记1——读取矢量数据并可视化

学习源:知乎作者:HopeR的专栏:R语言空间数据分析 学习资源: CASA0005 Geographic Information Systems and Science Spatial Data Science Geocomputation with R Geodesic geometry 首先做一个简单的上手案例,就是读取一个shapefile文件,一般来说,shape格式文件包括三个文件,才能成为一个完整的整体。(分别是shp,shx,dbf)但是我们通常接触的都是带有空间信息的shape数据,所有还

GeoSuper的博客 4713

R语言数据可视化 ggplot2基础1 ggplot2 图形的分层语法 Layered Grammar 简介

R语言数据可视化 ggplot2基础1 ggplot2 图形的分层语法 Layered Grammar 简介分层语法的组成(data-stat-geom-scale-coord-facet)用分层语法理解一段ggplot2代码Subplot 1Subplot 2 ggplot2是tidyverse包的一部分,tidyverse是Hadley Wickham及其团队了为了能够系统性处理数据、图表开发的一个包。对我们统计人来说,尽管R语言提供了很多数据可视化的方法,但ggplot2依然是R语言做可视化的最优雅、

一个不愿透露姓名的博客 1570

【R绘图】ggplot2数据可视化从入门到精通 (保姆级教程)

本文是一篇针对R语言数据可视化的ggplot2教程,旨在帮助用户掌握专业级图表绘制技巧。文章从环境搭建、数据准备到核心语法讲解,详细介绍了ggplot2的图层思维和实用技巧,并提供了多个实战案例(散点图、柱状图、箱线图、热力图等)。通过代码示例和可视化优化建议,帮助用户避免常见错误,快速提升图表质量,实现高效数据表达。适合R语言初学者和希望提升可视化水平的数据分析从业者阅读。

R酷的数据科学笔记 1463

r语言按回车键出现一个加号

R语言中的交互式输入与图形绘制 R语言是一种广泛用于统计计算和数据可视化的编程语言。在R语言中,特别是在R的交互式环境中,用户可以通过按回车键在控制台输入代码并得到即时反馈。在特定的情况下,按回车键还会出现一个加号 (+),表示输入尚未完成,需要继续输入。本文将探讨R语言的这一特性,并结合实际示例进行详细说明。 R语言中的...

weixin_32823659的博客 1068

R语言ggplot2可视化:ggplot2可视化将图像的图例(legend)移动到图像内部、自定义图例所处的位置

R语言ggplot2可视化:ggplot2可视化将图像的图例(legend)移动到图像内部、自定义图例所处的位置

data+scenario+science+insight 2452

R语言ggplot2绘图

R语言使用ggplot2绘图

qq_54423921的博客 8283

玩转数据可视化之R语言ggplot2:(一)ggplot2实现箱线图、小提琴图、直方图等图形(快速入门)

玩转R语言ggplot2数据可视化 本系列主要介绍R语言ggplot2的使用 参考资料: ggplot2: Elegant Graphics for Data Analysis 文章目录玩转R语言ggplot2数据可视化1.使用案例数据 ggplot2是R语言数据可视化中的重要库之一。本章介绍如何使用ggplot()实现重要的基本图形。 1.使用案例数据 本章中,我们使用ggplot2中的自带数据集mpg, ...

阿里云专家博主、数据科学领域优质创作者、统计er在读 1万+

【R语言数据科学】:(六)数据可视化之ggplot2详解

R语言数据分析 本系列主要介绍R语言在数据分析领域的应用包括: R语言编程基础、R语言可视化、R语言进行数据操作、R语言建模、R语言机器学习算法实现、R语言统计理论方法实现。 本系列会完成下去,请大家多多关注点赞支持,一起学习~ 参考资料: Data Analysis and Prediction Algorithms with R 文章目录R语言数据分析6.ggplot2介绍6.1 图形的组成部分6.2 ggplot对象6.3 图形类型6.4 美学映射6.5 层级6.6 调整参数6.7 全局和局部美学映

阿里云专家博主、数据科学领域优质创作者、统计er在读 1万+

r语言ggplot合并图形_R中带有ggplot2的图形

r语言ggplot合并图形 介绍 (Introduction) R is known to be a really powerful programming language when it comes to graphics and visualizations (in addition to statistics and data science of course!). 当涉及图形和可视化时...

weixin_26737625的博客 4535

R语言:安装和使用ggplot2数据可视化库

一旦安装完成,你可以使用library函数加载ggplot2包,并使用ggplot2绘制各种数据可视化图形。一旦安装完成,你可以使用library函数加载ggplot2包,并使用ggplot2绘制各种数据可视化图形。现在,你已经成功安装并加载了ggplot2包,可以使用它创建各种精美的数据可视化图形。R语言是一种开源的统计分析语言,而RStudio是一个集成开发环境(IDE),用于编写和执行R代码。ggplot2是R语言中一款强大的数据可视化库,它提供了丰富的绘图功能和灵活的图形定制选项。

2301_79366106的博客 3463

[R语言] ggplot2入门笔记1—ggplot2简要教程

文章目录1 ggplot2入门笔记1—ggplot2简要教程1. 设置 The Setup2. 图层 The Layers3. 标签 The Labels4. 主题 The Theme5. 分面 The Facets6. 常用函数 Commonly Used Features6.1 绘制时间序列图(使用ggfortify)6.2 在同一ggplot上绘制多个时间序列6.3 条形图6.4 自定义布局...

You and Me 5807

玩转数据可视化之R语言ggplot2:(四)单一基础几何图形绘制

玩转数据可视化之R语言ggplot2 小编大四统计在读,目前保研到统计学top3高校继续攻读统计研究生。本系列主要介绍R语言ggplot2的使用 参考资料: ggplot2: Elegant Graphics for Data Analysis 文章目录玩转数据可视化之R语言ggplot24. 玩转数据可视化之ggplot2:单一几何图形绘制 4. 玩转数据可视化之ggplot2:单一几何图形绘制 这些几何图形是ggplot2的基本组成部分。可以用于构造更复杂的几何体。也是ggplot最基础的图形 这些几

阿里云专家博主、数据科学领域优质创作者、统计er在读 1万+

玩转数据可视化之R语言ggplot2:(五)分组画图

玩转数据可视化之R语言ggplot2 🌸个人主页:JoJo的数据分析历险记 📝个人介绍:小编大四统计在读,目前保研到统计学top3高校继续攻读统计研究生 💌如果文章对你有帮助,欢迎关注、点赞、收藏、订阅专栏 本系列主要介绍R语言ggplot2的使用 参考资料: ggplot2: Elegant Graphics for Data Analysis 文章目录玩转数据可视化之R语言ggplot2💘5.玩转数据可视化之R语言ggplot2:组合画图🌲5.1 多个分组,一种美学🌳5.2 在不同层级上分组🌴5.

阿里云专家博主、数据科学领域优质创作者、统计er在读 1万+

[R语言]数据可视化包ggplot2教程及实例

ggplot是一个拥有一套完备语法且容易上手的绘图系统,在Python和R中都能引入并使用,在数据分析可视化领域拥有极为广泛的应用。本篇从R的角度介绍如何使用ggplot2包,首 先给几个我觉得最值得推荐的理由: 采用“图层”叠加的设计方式,一方面可以增加不同的图之间的联系,另一方面也有利于学习和理解该package,photoshop的老玩家应该比较能理解这个带来的巨大便利 适用范围广,拥有详尽的文档,通过?和对应的函数即可在R中找到函数说明文档和对应的实例 在R和Python中均可使用,降低两门语言之间

fb19801101的专栏 1245

betweenness_centrality

betweenness_centrality

上一篇: R语言数据可视化教程(ggplot2)_其他图形
下一篇: R语言数据可视化教程(ggplot2)_数据塑形
镰刀韭菜
博客等级 码龄12年 2万+粉丝 855原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

镰刀韭菜

看在我不断努力的份上,支持我吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值