R语言ggplot2 (一):ggplot2包安装和初始作图 您所在的位置:网站首页 R语言plots没有反应 R语言ggplot2 (一):ggplot2包安装和初始作图

R语言ggplot2 (一):ggplot2包安装和初始作图

2024-02-20 03:37| 来源: 网络整理| 查看: 265

ggplot2是一款强大的图形可视化R包,其作图方式易于理解,且生成的图形精美,定制化程度也很高,应该是R里面最流行的可视化工具。本文关注于ggplot2包的安装、ggplot2基本作图语法等。

一 ggplot2的安装

> .libPaths("~/R/lib") 如果不安装到默认路径,可以在此设置安装路径 > install.packages("ggplot2") #以上代码也可以直接用install.packages("ggplot2",lib=""~/R/lib"")代替,这样就只是把包安装到路径中,并不会载入路径, #不过后续载入包就找不到路径了,需要在library的时候指定路径

载入ggplot2包,进行基础绘图,现在就用ggplot2自带的数据集激进型测试,mgp数据集的描述:Fuel economy data from 1999 and 2008 for 38 popular models of car(美国1999年到2008年38种流行汽车的能源使用数据),数据库详细说明可参考

https://www.rdocumentation.org/packages/ggplot2/versions/3.0.0/topics/mpg

> library(ggplot2, lib.loc=""~/R/lib"") #如若ggplot2包安装在其它路径,就用lib.loc指定此路径,如在默认路径就不需要设置此参数 > mpg #mpg数据集如下 # A tibble: 234 x 11 manufacturer model displ year cyl trans drv cty hwy fl class 1 audi a4 1.80 1999 4 auto(l… f 18 29 p comp… 2 audi a4 1.80 1999 4 manual… f 21 29 p comp… 3 audi a4 2.00 2008 4 manual… f 20 31 p comp… 4 audi a4 2.00 2008 4 auto(a… f 21 30 p comp… 5 audi a4 2.80 1999 6 auto(l… f 16 26 p comp… 6 audi a4 2.80 1999 6 manual… f 18 26 p comp… 7 audi a4 3.10 2008 6 auto(a… f 18 27 p comp… 8 audi a4 qua… 1.80 1999 4 manual… 4 18 26 p comp… 9 audi a4 qua… 1.80 1999 4 auto(l… 4 16 25 p comp… 10 audi a4 qua… 2.00 2008 4 manual… 4 20 28 p comp…

 

下面来绘制一个简单的图形-散点图,但是出现了报错,说是没有png supoort,用capiabilities()可查看支持的图片类型,此时需要安装Cairo包来支持,安装方法见 https://www.cairographics.org/download/。首先在bash界面种安装Cairo需要的dev库文件,然后进入R安装Cairo即可。

> p ggsave(filename="point.png",plot=p) > capabilities() jpeg png tiff tcltk X11 aqua TRUE TRUE TRUE TRUE FALSE FALSE http/ftp sockets libxml fifo cledit iconv TRUE TRUE TRUE TRUE TRUE TRUE NLS profmem cairo ICU long.double libcurl TRUE FALSE TRUE TRUE TRUE TRUE

$ sudo apt-get install libcairo2-dev #For Debian and Debian derivatives including Ubuntu $ sudo yum install cairo-devel #For Fedora $ zypper install cairo-devel #For openSUSE > install.packages("Cairo") > ggplot(mpg,aes(x=hwy,y=cty)) + geom_point(aes(color=cyl),size=2) #这里的ggsave保存步骤就神略了,后面也一样

ggplot(mpg,aes(hwy,cty)) + geom_point(aes(color=cyl)),这是一般绘图语法,也可以写成ggplot(mpg) + geom_point(aes(hwy,cty,color=cyl)),aes表示进行数据映射,aes括号外面的参数表示直接赋值(与数据没有关系了),其中hwy映射到图上是x轴数据,cty映射到y轴上,cyl映射到颜色属性,图上每一个点的三重属性都得到展示了,一般输入的坐标轴属性有1~3个,如只用1个坐标轴属性值就可画直方图,一般画图是两个属性,在3D图种会用到3个坐标轴属性值,而除了映射到坐标轴的属性值之外,其它的属性如颜色、大写、标记、填充、分面等可以自由设置。

上图是典型的散点图,cyl设置了点的颜色属性,由于cyl是数值,所以就当成了连续变量,映射到颜色属性之后也成了连续的颜色,由于cyl就只有几类数据,可以按照离散变量来设置。

aes里面设置的变量都需要有数据映射,如果没有数据映射直接设置成定值,可在aes外设置,如下设置点的大小。

ggplot(mpg,aes(x=hwy,y=cty)) + geom_point(aes(color=factor(cyl)),size=0.5)

除了geom_point()绘画点图之外,还有很多图形可以绘制,并且可以通过调节参数绘制很多子图形,以下列举几种常见图形。

geom_line()             折线图

geom_bar()              图形图

geom_histogram()   直方图

geom_boxplot()       箱线图

geom_density()        密度函数分布图

geom_area()            面积图,覆盖数据以下的所有区域。

由于ggplot2几何图形都是geom_xxx形式,所以可以在R种列出所有的绘图类型

> library(ggplot2) > ls("package:ggplot2", pattern="^geom_.+") [1] "geom_abline" "geom_area" "geom_bar" "geom_bin2d" [5] "geom_blank" "geom_boxplot" "geom_col" "geom_contour" [9] "geom_count" "geom_crossbar" "geom_curve" "geom_density" [13] "geom_density_2d" "geom_density2d" "geom_dotplot" "geom_errorbar" [17] "geom_errorbarh" "geom_freqpoly" "geom_hex" "geom_histogram" [21] "geom_hline" "geom_jitter" "geom_label" "geom_line" [25] "geom_linerange" "geom_map" "geom_path" "geom_point" [29] "geom_pointrange" "geom_polygon" "geom_qq" "geom_quantile" [33] "geom_raster" "geom_rect" "geom_ribbon" "geom_rug" [37] "geom_segment" "geom_smooth" "geom_spoke" "geom_step" [41] "geom_text" "geom_tile" "geom_violin" "geom_vline"

ggplot2在绘图的时候内部进行统计分析,每种几何图形都有默认的统计变换类型,统计变换用stat_xxx形式

> library(ggplot2) > ls("package:ggplot2",pattern="stat_.+") [1] "stat_bin" "stat_bin_2d" "stat_bin_hex" [4] "stat_bin2d" "stat_binhex" "stat_boxplot" [7] "stat_contour" "stat_count" "stat_density" [10] "stat_density_2d" "stat_density2d" "stat_ecdf" [13] "stat_ellipse" "stat_function" "stat_identity" [16] "stat_qq" "stat_quantile" "stat_smooth" [19] "stat_spoke" "stat_sum" "stat_summary" [22] "stat_summary_2d" "stat_summary_bin" "stat_summary_hex" [25] "stat_summary2d" "stat_unique" "stat_ydensity" [28] "update_stat_defaults"

本文网址:https://mp.csdn.net/postedit/82914819



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有