R语言【grDevices】——bmp、jpeg、png、tiff图形设备

news/发布时间2024/5/14 10:19:02

Package grDevices version 4.2.0


Description

图形设备的BMP, JPEG, PNG和TIFF格式的位图文件。


Usage

bmp(filename = "Rplot%03d.bmp",width = 480, height = 480, units = "px", pointsize = 12,bg = "white", res = NA, family = "", restoreConsole = TRUE,type = c("windows", "cairo"), antialias,symbolfamily="default")jpeg(filename = "Rplot%03d.jpg",width = 480, height = 480, units = "px", pointsize = 12,quality = 75,bg = "white", res = NA, family = "", restoreConsole = TRUE,type = c("windows", "cairo"), antialias,symbolfamily="default")png(filename = "Rplot%03d.png",width = 480, height = 480, units = "px", pointsize = 12,bg = "white", res = NA, family = "", restoreConsole = TRUE,type = c("windows", "cairo", "cairo-png"), antialias,symbolfamily="default")tiff(filename = "Rplot%03d.tif",width = 480, height = 480, units = "px", pointsize = 12,compression = c("none", "rle", "lzw", "jpeg", "zip", "lzw+p", "zip+p"),bg = "white", res = NA, family = "", restoreConsole = TRUE,type = c("windows", "cairo"), antialias,symbolfamily="default")

Arguments

参数【filename】:输出文件的路径,最多511个字符。如果字符串中包含C整数格式(如默认情况),则替换页码,并执行波浪展开(参见path.expand)。(结果长度必须小于600个字符。详情见postscrript。)

参数【width】:设备的宽度。

参数【height】:设备的高度。

参数【units】:表示高度和宽度的单位。可以是px(像素,默认值),in(英寸),cm或mm。

参数【pointsize】:绘制文本的默认点大小,以分辨率ppi解释为大点(1/72英寸)。

参数【bg】:初始背景颜色:可以通过设置par("bg")来覆盖。

参数【quality】:JPEG图像的“质量”,以百分比表示。较小的值将提供更多的压缩,但也会使图像更差。

参数【compression】:要使用的压缩类型。

参数【res】:如果是正整数,则ppi中的标称分辨率将被记录在位图文件中。也用于默认值以外的单位。如果未指定,则取72ppi来设置文本大小和行宽。

参数【family】:长度为一个字符的向量,指定默认字体族。默认情况下,在Windows GDI版本中使用字体数字,在图形版本中使用“sans”。

参数【restroeConsole】:请参阅“详细信息”部分。仅适用于type == "windows"。

参数【type】:绘图应该使用Windows GDI还是cairo ?

参数【antialias】:长度-一个字符向量。对于允许的值及其对type = "windows"字体的影响,请参阅windows:对于该类型,如果缺少参数,则默认值取自windows.options()$bitmap.aa.win。有关type = "cairo"允许的值及其效果(对字体和行,但不包括填充),请参阅svg。

参数【symbolfamily】:仅用于绘图:一个长度为1的字符串,指定用作“符号”字体的字体族(例如,用于绘图输出)。默认值为“default”,这意味着R将根据图形设备的能力选择默认的“符号”字体。


Details

PNG和JPEG格式的图可以很容易地转换为许多其他位图格式,并且都可以在现代web浏览器中显示。PNG格式是无损的,最适合线条图和彩色块。JPEG格式是有损的,但可能对图像绘图有用。BMP格式是Windows上的标准格式,并且被其他地方的大多数观众所支持。TIFF是一种元格式:由TIFF编写的默认格式是无损的,并且存储未压缩的RGB值——这样的文件被广泛接受,这是它们相对于PNG的主要优点。

Windows GDI对位图的大小施加了限制:这些限制在SDK中没有记录,可能取决于Windows的版本。看来宽度和高度都是有限的。此外,总像素数也有限制,这取决于图形硬件。

缺省情况下,文件中没有分辨率记录(BMP除外)。当没有记录时,观众通常会假设名义分辨率为72 ppi。由于PNG文件的分辨率是以像素/米为单位记录的,因此报告的ppi值将略有变化。

对于使用英寸为单位的图形参数,假设为res ppi(默认72)。

如果页面上的颜色少于256种,bmp和png都将使用调色板,否则记录一个24位RGB文件。对于png设备,type = "cairo"在驱动程序中输出png,因此与"windows"类型兼容。type = "cairo-png"使用cairographics的PNG后端,它永远不会使用调色板,通常会创建一个更大的32位ARGB文件-对于半透明颜色的专业使用可能会更好。

png(type = "windows")在16位(' High Color ')或更好的屏幕上支持透明背景:使用bg = "transparent"。它还支持线条、填充和文本的半透明颜色。然而,由于所使用的图形工具包中只有部分支持透明度:如果有一个透明的背景,半透明的颜色被涂在稍微灰白色的背景上,因此像素是不透明的。

并非所有PNG查看器都能正确地呈现透明文件。

tiff压缩类型“lzw+p”和“zip+p”使用水平差分(“差分预测器”,tiff规范第14节)与压缩方法相结合,这对连续色调图像,特别是彩色图像是有效的。

未知分辨率的BMP文件记录为72ppi。


Value

打开一个绘图装置:没有任何东西返回给R解释器。


Warnings

请注意,默认情况下,宽度和高度的单位是像素,而不是英寸。如果两者都小于20,则会发出警告。

如果您在其中一个设备上绘制了多个页面,并且没有在文件中包含类似%d的序列号,则该文件将包含绘制的最后一页。


Difference between OSes

这些函数是三个或更多不同底层设备的接口。

        在Windows上,设备通过Windows的GDI调用绘制到隐藏屏幕。

        在支持X11的平台上,绘制到隐藏的X11显示。

        在macOS上,当在控制台工作时,当R在适当的支持下编译时,使用Apple的Quartz绘图系统。

        其中支持已编译为开罗图形,绘图在开罗表面。这可以使用本机平台对字体的支持,也可以使用fontconfig来支持各种字体格式。

所支持的选项和所产生的输出之间不可避免地会存在差异。也许最重要的是对抗锯齿字体和半透明颜色的支持:在可用的情况下,基于cairo或quartz的设备可能会获得最佳效果。

Windows系统默认的扩展名是“.jpg”和“.tif”,其他地方则是“.jpeg”和“.tiff”。


Conventions

本节描述《R internal》手册中图形设备约定的实现。

        默认设备大小为像素。

        字体大小以大点表示,解释为res - ppi。

        默认字体系列是Arial。

        线宽是1/96英寸的倍数(以分辨率ppi解释),最小为一个像素(type = "window ")或0.01 (type = "cairo")。

        对于type = "window ",圆的最小半径为1像素。

        颜色由浏览应用程序解释。


Note

这些设备的type = "windows"版本有效地在隐藏屏幕上绘图,然后将图像复制到所需的格式。这意味着它们具有与实际屏幕设备相同的色彩处理,并且如果设置为24位或32位色彩模式则效果最佳。

对于高质量的图,如果antialias = "cleartype"不是Windows系统的默认值,你可能需要这个参数。另一方面,png(antialias = "none")将提供最紧凑的文件。


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

如若内容造成侵权/违法违规/事实不符,请联系编程老四网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

gnss尾矿库安全监测系统是什么

【TH-WY1】GNSS尾矿库安全监测系统是一种利用全球导航卫星系统(GNSS)技术对尾矿库进行安全监测的系统。尾矿库是矿山企业的重要设施之一,用于存放矿山开采过程中产生的尾矿。由于尾矿库具有高能势和复杂的地质环境,存在溃坝、滑坡…

电脑如何连接蓝牙音响?快速连接指南分享!

“我想将电脑连接蓝牙音响,但是不知道怎么操作,大家有什么比较好的连接方法可以分享吗?” 随着科技的发展,蓝牙技术已经成为我们日常生活中不缺的一部分。无论是手机、平板还是电脑,通过蓝牙技术,我们都能够…

CAN_相关的测试用例+测试方法+测试工具使用+输出测试报告

测试类型: 第一:通信测试 第二:间接网络管理测试 第三:AUTOSAR网络管理测试 第四:诊断协议栈Diva测试 第五:诊断协议补充测试 第六:Bootloader测试 第七:网…

24-k8s的附件组件-Metrics-server组件与hpa资源pod水平伸缩

一、概述 Metrics-Server组件目的:获取集群中pod、节点等负载信息; hpa资源目的:通过metrics-server获取的pod负载信息,自动伸缩创建pod; 参考链接: 资源指标管道 | Kubernetes https://github.com/kuberne…

免费搭建个人网盘

免费搭建一个属于个人的网盘。 服务端 详情请参考原网站的服务端下载和安装虚拟磁盘Fuse4Ui可以支持把网盘内容挂载成系统的分区; 挂载工具效果图:应用端应用端的下载 效果图

XTuner InternLM-Chat 个人小助手认知微调实践

要解决的问题: 如何让模型知道自己做什么,是什么样身份。是谁创建了他!!! 概述 目标:通过微调,帮助模型认清了解对自己身份弟位 方式:使用XTuner进行微调 微调前(回答…

Python 光速入门课程

首先说一下,为啥小编在即PHP和Golang之后,为啥又要整Python,那是因为小编最近又拿起了 " 阿里天池 " 的东西,所以小编又不得不捡起来大概五年前学习的Python,本篇文章主要讲的是最基础版本,所以比…

C++ 二维前缀和 子矩阵的和

输入一个 n 行 m 列的整数矩阵,再输入 q 个询问,每个询问包含四个整数 x1,y1,x2,y2 ,表示一个子矩阵的左上角坐标和右下角坐标。 对于每个询问输出子矩阵中所有数的和。 输入格式 第一行包含三个整数 n,m,q 。 接下…

长短期记忆神经网络

目录 LSTM 神经网络架构 分类 LSTM 网络 回归 LSTM 网络 视频分类网络 更深的 LSTM 网络 网络层 分类、预测和预报 序列填充、截断和拆分 按长度对序列排序 填充序列 截断序列 拆分序列 指定填充方向 归一化序列数据 无法放入内存的数据 可视化 LSTM 层架构 …

Elastic Search:构建语义搜索体验

当你逐步熟悉 Elastic 时,你将使用 Elasticsearch Relevance Engine™ (ESRE),该引擎旨在为 AI 搜索应用程序提供支持。 借助 ESRE,你可以利用一套开发人员工具,包括 Elastic 的文本搜索、向量数据库和我们用于语义搜索的专有转换…

分享一个我爱工具网源码优化版

应用介绍 本文来自:分享一个我爱工具网源码优化版 - 源码1688 前几天在网上看到了一个不错的工具网源码,但是源码存在一些问题,遂进行了修改优化。 主要修改内容有: 1、后台改为账号密码登录,上传即用,不…

Kotlin filterIsInstance filterNotNull forEach

Kotlin filterIsInstance filterNotNull forEach fun main(args: Array<String>) {val i1 MyItem(1, 1)val i2: MyItem? nullval i3: Int 3val i4 "4"val i5 nullval i6 MyItem(6, 6)val list mutableListOf<Any?>(i1, i2, i3, i4, i5, i6)lis…

回显服务器的制作方法

文章目录 客户端和服务器TCP和UDP的特点UDP socket api的使用DatagramSocketDatagramPacketInetSocketAddress API 做一个简单的回显服务器UDP版本的回显服务器TCP版本的回显服务器 客户端和服务器 在网络中&#xff0c;主动发起通信的一方是客户端&#xff0c;被动接受的这一方…

QoS 服务质量

服务质量 QoS (Quality of Service) 服务质量可用若干基本性能指标来描述&#xff0c;包括&#xff1a;可用性、差错率、响应时间、吞吐量、分组丢失率、连接建立时间、故障检测和改正时间等。 服务提供者可向其用户保证某一种等级的服务质量。 服务性能的总效果&#xff0c;…

6.网络游戏逆向分析与漏洞攻防-游戏网络架构逆向分析-通过逆向分析确定游戏明文发送数据过程

内容参考于&#xff1a;易道云信息技术研究院VIP课 上一个内容&#xff1a;测试需求与需求拆解 在开始之前要了解一个小知识&#xff0c;在逆向开始之前要很清楚知道要找的东西是什么&#xff0c;大概长什么样子&#xff0c;只有这样才能看到它第一眼发现它&#xff0c;现在我…

2024年 最新python调用ChatGPT实战教程

2024年 最新python调用ChatGPT实战教程 文章目录 2024年 最新python调用ChatGPT实战教程一、前言二、具体分析1、简版程序2、多轮对话3、流式输出4、返回消耗的token 一、前言 这个之前经常用到&#xff0c;简单记录一下,注意目前chatgpt 更新了&#xff0c;这个是最新版的&am…

k8s学习(RKE+k8s+rancher2.x)成长系列之简配版环境搭建(四)之Helm及cert-manager安装

安装Helm(三台都安装) 下载helm安装包并加入执行目录 tar zxf helm-v3.2.4-linux-amd64.tar.gz cd linux-amd64 cp helm /usr/bin/ helm version添加rancher稳定版仓库(三台都安装) helm repo add rancher-stable http://rancher-mirror.oss-cn-beijing.aliyuncs.com/serve…

CSS 字体和文本详解

CSS 字体和文本详解 字体设置 如果字体名有空格&#xff0c;使用引号包裹。建议使用常见字体&#xff0c; 否则兼容性不好。字体名称可以用英文&#xff0c;也可以用中文&#xff0c; 推荐使用英文。 示例代码: 运行结果: 字体大小 不同的浏览器默认字号不一样&#xff0c;…

华清远见嵌入式学习——驱动开发——day9

目录 作业要求&#xff1a; 作业答案&#xff1a; 代码效果&#xff1a; ​编辑 Platform总线驱动代码&#xff1a; 应用程序代码&#xff1a; 设备树配置&#xff1a; 作业要求&#xff1a; 通过platform总线驱动框架编写LED灯的驱动&#xff0c;编写应用程序测试&…

MariaDB落幕和思考

听过MySQL的基本也都知道 MariaDB。MariaDB由MySQL的创始人主导开发&#xff0c;他早前曾以10亿美元的价格&#xff0c;将自己创建的公司MySQL AB卖给了SUN&#xff0c;此后&#xff0c;随着SUN被甲骨文收购&#xff0c;MySQL的所有权也落入Oracle的手中。传闻MySQL的创始人担心…
推荐文章