• R_数据视觉化处理_初阶_02


    通过数据创建一幅简单的图像,

    #Crate a easy photo
    pdf("mygraph.pdf")
    attach(mtcars)
    plot(wt,mpg)
    abline(lm(mpg~wt))
    title("Regression of MPG on Weight")
    detach(mtcars)
    dev.off()

    除了pdf(),还可以使用函数win.metafile()、png()、jpeg()、bmp()、tiff()、xfig()和postscript()将图形保存为其他格式。

    通过执行如plot()、hist()(绘制直方图)或boxplot()这样的高级绘图命令来创建一幅新图形时,通常会覆盖掉先前的图形。

    可通过以下方法避免覆盖:

      创建一个新的图像窗口

        dev.new()

          statements to create graph 1

        dev.new()

          statements to create a graph 2

        etc.

    plot(x,y, type="b")  对象作图的一个泛型函数(输出随绘制对象的不同而不同) type="b"表示同时绘制点和线。

    图像参数设定:

          par()全局设定,加参数no.readonly=TRUE,仅对当前图像有用

    常见参数如下图:

    颜色参数:

    参 数 描 述

    col 默认的绘图颜色。某些函数(如lines 和pie)可以接受一个含有颜色值的向量并自动循环使用。

    例如,如果设定col=c("red", "blue")并需要绘制三条线,则第一条线将为红色,第二条线为蓝

    色,第三条线又将为红色

    col.axis 坐标轴刻度文字的颜色

    col.lab 坐标轴标签(名称)的颜色

    col.main 标题颜色

    col.sub 副标题颜色

    fg 图形的前景色

    bg 图形的背景色

    颜色的多种设定方法:在R中,可以通过颜色下标、颜色名称、十六进制的颜色值、RGB值或HSV值来指定颜色。举例来说,col=1、col="white"、col="#FFFFFF"、col=rgb(1,1,1)和col=hsv(0,0,1)都表示白色。

    文本属性:

      用于指定文本大小:

        cex 表示相对于默认大小缩放倍数的数值。默认大小为1,1.5 表示放大为默认值的1.5 倍,0.5 表示缩小为默认值的50%,等等

        cex.axis 坐标轴刻度文字的缩放倍数。类似于cex

        cex.lab 坐标轴标签(名称)的缩放倍数。类似于cex

        cex.main 标题的缩放倍数。类似于cex

        cex.sub 副标题的缩放倍数。类似于cex

      用于指定字体族,字号和字样的参数:

        font 整数。用于指定绘图使用的字体样式。1=常规,2=粗体,3=斜体,4=粗斜体,5=符号字体(以Adobe符号编码表示)

        font.axis 坐标轴刻度文字的字体样式

        font.lab 坐标轴标签(名称)的字体样式

        font.main 标题的字体样式

        font.sub 副标题的字体样式

        ps 字体磅值(1 磅约为1/72 英寸)。文本的最终大小为ps*cex

        family 绘制文本时使用的字体族。标准的取值为serif(衬线)、sans(无衬线)和mono(等宽)

    控制图形尺寸和边界大小的参数

      pin 以英寸表示的图形尺寸(宽和高)

      mai 以数值向量表示的边界大小,顺序为“下、左、上、右”,单位为英寸

      mar 以数值向量表示的边界大小,顺序为“下、左、上、右”,单位为英分①。默认值为c(5, 4, 4, 2) + 0.1

    添加文本,自定义坐标轴和图例:

      除了图形参数,许多高级绘图函数(例如plot、hist、boxplot)也允许自行设定坐标轴和文本标注选项。举例来说,以下代码在图形上添加了标题(main)、副标题(sub)、坐标轴标签(xlab、ylab)并指定了坐标轴范围(xlim、ylim)

    title()函数:title(main="main title",sub="subtitle",xlab="x-axis label", ylab="y-axis label");主要用于被ann=FALSE选项移除默认选项的图形。

    坐标轴:函数axis()来创建自定义的坐标轴,而非使用R中的默认坐标轴。其格式为:axis(side, at=, labels=, pos=, lty=, col=, las=, tck=, ...)

    选项参数有:

    side 一个整数,表示在图形的哪边绘制坐标轴(1=下,2=左,3=上,4=右)

    at 一个数值型向量,表示需要绘制刻度线的位置

    labels 一个字符型向量,表示置于刻度线旁边的文字标签(如果为NULL,则将直接使用at 中的值)

    pos 坐标轴线绘制位置的坐标(即与另一条坐标轴相交位置的值)

    lty 线条类型

    col 线条和刻度线颜色

    las 标签是否平行于(=0)或垂直于(=2)坐标轴

    tck 刻度线的长度,以相对于绘图区域大小的分数表示(负值表示在图形外侧,正值表示在图形内侧,0

    表示禁用刻度,1 表示绘制网格线);默认值为–0.01

    (…) 其他图形参数

    次要刻度线:

    library(Hmisc)
    minor.tick(nx=n, ny=n, tick.ratio=n)

    参考线:abline()

    图例:legend(location, title, legend, ...)

    location   有许多方式可以指定图例的位置。你可以直接给定图例左上角的x、y 坐标,也可以执行locator(1),然后通过鼠标单击给出图例的位置,还可以使用关键字bottom、bottomleft、left、topleft、top、topright、right、bottomright 或center 放置图例。如果你使用了以上某个关键字,那么可以同时使用参数inset=指定图例向图形内侧移动的大小(以绘图区域大小的分数表示)

    title 图例标题的字符串(可选)

    legend   图例标签组成的字符型向量

    …     其他选项。如果图例标示的是颜色不同的线条,需要指定col=加上颜色值组成的向量。如果图例标示的是符号不同的点,则需指定pch=加上符号的代码组成的向量。如果图例标示的是不同的线条宽度或线条类型,请使用lwd=或lty=加上宽度值或类型值组成的向量。要为图例创建颜色填充的盒形(常见于条形图、箱线图或饼图),需要使用参数fill=加上颜色值组成的向量。

    文本标志:

    text(location, "text to place", pos, ...)

    mtext("text to place", side, line=n, ...)

    常见选项

    location 文本的位置参数。可为一对x、y 坐标,也可通过指定location 为locator(1)使用鼠标交互式地确定摆放位置

    pos 文本相对于位置参数的方位。1=下,2=左,3=上,4=右。如果指定了pos,就可以同时指定参数offset=作为偏移量,以相对于单个字符宽度的比例表示

    side 指定用来放置文本的边。1=下,2=左,3=上,4=右。你可以指定参数line=来内移或外移文本,随值的增加,文本将外移。也可使用adj=0 将文本向左下对齐,或使用adj=1 右上对齐

    图像组合:使用par()函数中使用图形参数mfrow=c(nrows, ncols)来创建按行填充的、行数为nrows、列数为ncols的图形矩阵。

    使用layou()控制每布图的大小

    widths = 各列宽度值组成的一个向量

    heights = 各行高度值组成的一个向量

    fig=(x1,x2,y1,y2)用来圈定图像的范围

    2018-08-07

  • 相关阅读:
    入梦初醒
    工作杂记
    终于用上双屏了!
    工作杂记(ii)
    2008
    $this>$a与$this>aPHP学习笔记
    明天要开工了
    好的程序员如何被发现,如何证明你简历中所标榜的那些精通和能力?
    架构师的思考:性能优化到何处为止?选择的原则
    极具挑战的超级智力测验题
  • 原文地址:https://www.cnblogs.com/hazy-star/p/9437999.html
Copyright © 2020-2023  润新知