1. 程式人生 > >R數據可視化----ggplot2之標度、坐標軸和圖例詳解

R數據可視化----ggplot2之標度、坐標軸和圖例詳解

abs 調整 所有 不同的 size n) 默認 表達 idt

標度控制著數據到圖形屬性的映射,當有需要時,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=msleep,colour=vore)
> p    ##默認參數
> p + scale_colour_hue("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=mpg,colour=displ) ##默認標度下圖左1
> p
> p + scale_x_continuous("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之標度、坐標軸和圖例詳解