首页 > 代码库 > R数据可视化----ggplot2之标度、坐标轴和图例详解

R数据可视化----ggplot2之标度、坐标轴和图例详解

标度控制着数据到图形属性的映射,当有需要时,ggplot2会自动添加一个默认的标度。我们确实可以在不了解标度运行原理的情况下画出许多图形,但理解标度并学会如何操纵它们则将赋予我们对图形更强的控制能力。

每一种图形属性都拥有一个默认的标度,此标度将在我们每次使用这个图形属性时被自动添加到图形中,这些标度列于下表中,默认属性粗体显示:

图形属性 离散型 连续型
颜色和填充色

brewer

grey

hue

identity

manual

gradient

gradient2

gradientn

位置 discrete

continuous

date

形状

shape

identity

manual

 
线条类型

linetype

identity

manual

 
大小

identity

manual

size

 

如果要添加一个不同的标度或修改默认标度的某些特征,我们必须构建一个新的标度,然后使用+将其添加到图形上。所有的标度构建器(scale)都拥有一套通用的命名方案,它们以scale_开头,接下来是图形属性的名称(例如:colour_,shape_,或x_)最后以标度的名称结尾(gradien、hue或manual)。比如scale_x_discrete().离散图形的颜色属性的默认标度名为scale_colour_hue(),填充色的Brewer配色标度名为scale_fill_brewer()。

> p <- qplot(sleep_total,sleep_cycle,data=http://www.mamicode.com/msleep,colour=vore)"what does\nit eat?",breaks=c("herbi","carni","omni",NA),labels=c("plants","meats","both","don‘t know"))  ##调整标度的参数

  技术分享技术分享

标度详解,可大致分为几组:

  • 位置标度,用于将连续型、离散型和日期时间型变量映射到绘图区域,以及构造对应的坐标轴。
  • 颜色标度,用于将连续型和离散型变量映射到颜色
  • 手动标度,将离散型变量映射到我们选择的符号大小、线条类型、形状、或颜色

1.通用参数

以下参数对所有标度都通用:

  • name:设置坐标轴或图例上出现的标签。可以使用三个辅助函数xlab(),ylab(),labs()可以让我们减少部门键入。
> p <- qplot(cty,hwy,data=http://www.mamicode.com/mpg,colour=displ) ##默认标度下图左1"City mpg")  ##添加x标签 下图左2
> p + xlab("City mpg")  ##添加x标签 与上相同
> p + ylab("Highway mpg")  ##添加y标签
> p + labs(x= "City mpg",y = "Hightway mpg",colour = "Displacement")  ##添加x、y及colour标度 下图左3

> p + xlab(expression(frac(miles,gallon)))   ##x标度为表达式 下图右1
> 

  技术分享技术分享技术分享技术分享

  • limits:固定标度的定义域。连续型标度接受一个长度为2的数值型向量;离散型标度接受一个字符型向量。一旦设定limits,数据将不再进行任何训练。限制定义域可以帮助我们移除不想在图形上展示的数据,任何不在此范围内的数据将会被丢弃。
  • breaks和labels:breaks控制着显示在坐标轴或图例上的值。labels指定了应在断点处显示的标签,若设定labels,则必须同时指定breaks。

 

R数据可视化----ggplot2之标度、坐标轴和图例详解