设为首页 加入收藏

TOP

ggplot2图形解析(二)
2017-10-09 13:50:42 】 浏览:8653
Tags:ggplot2 图形 解析
ta = "y")

6、分面(facet)

Facets是表现分类变量的一种方式。 先将数据划分为多个子集, 然后将每个子集数据绘制到页面,在同一个页面上摆放多幅图形

ggplot2提供了2种分面类型:网格型(facet_grid)和封装型(facet_wrap)。网格型生成的是一个2维的面板网格, 面板的行与列通过变量来定义, 本质是2维的; 封装型先生成一个1维的面板条块, 然后再分装到2维中, 本质是1维的。最直接的分面使用方法是 facet_grid()函数,只需要规定使用标点符号的行和列上使用的分类变量。

当一个分类变量具有多个等级(level),但并非所有level都存在于另一个变量的子集中,可以丢弃不用的level。

示例:设置scale = "free_y" 和 space = "free_y" 移除没有数据的行。.

ggplot(mamsleep, aes(x = time, y = name, col = sleep)) +
geom_point() +
facet_grid(vore ~ ., scale = "free_y", space = "free_y")

7Theme(主题)

是跟数据无关的可视元素,数据可视化的最后一步,使图形美观。

按作用对象分成三种类型及对应的函数:

Rectangle(矩形区域):element_rect()

Line(线条):  element_text()

text (文字):element_line()

 在图形页面中的不同图框之间存在空白,分面(facet)之间、x轴标签和图框之间,图框与整个面板背景之间都存在着空白。示例如下:

# 增加分面之间的空白
library(grid)
z + theme(panel.spacing.x = unit(2, "cm"))

#移除多余的图形边距空白
z + theme(panel.spacing.x = unit(2, "cm"),
plot.margin = unit(c(0,0,0,0), "cm"))

管理、更新和保存主题

 theme_update()  在原图层主题设置上进行更新。

theme_set(old)  重新装载图层设置。

应用示例:

# Theme layer saved as an object, theme_pink

theme_pink <- theme(panel.background = element_blank(),

                    legend.key = element_blank(),

                    legend.background = element_blank(),

                    strip.background = element_blank(),

                    plot.background = element_rect(fill = myPink, color = "black", size = 3),

                    panel.grid = element_blank(),

                    axis.line = element_line(color = "black"),

                    axis.ticks = element_line(color = "black"),

                    strip.text = element_text(size = 16, color = myRed),

                    axis.title.y = element_text(color = myRed, hjust = 0, face = "italic"),

                    axis.title.x = element_text(color = myRed, hjust = 0, face = "italic"),

                    axis.text = element_text(color = "black"),

               &nb

首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇R语言学习 - 线图一步法 下一篇R语言学习笔记(二): 类与泛型..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目