您好,登錄后才能下訂單哦!
本篇內容介紹了“R語言可視化中ggplot圖表配色技巧”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
今天跟大家分享ggplot圖表的配色原理與基本技巧。
圖表配色是一個很深奧的話題,多虧了R語言平臺的眾多開發者貢獻的配色包,讓圖表的配色不再深不可測。
這里我暫且將所有的配色場景劃分為兩類:
離散變量配色與連續變量配色
ggplot函數的配色機制相對來說比較智能,當你給colour或者fill屬性指定給變量映射的時候,該函數就會自動的區分變量屬性(是離散變量或者是連續變量),進而給出適用于兩種情況的配色風格。
ggplot(diamonds,aes(carat,price,colour=cut))+geom_point()
ggplot(diamonds,aes(carat,price,colour=depth))+geom_point()
大家可以對比以上兩句代碼:我并沒有指定任何實際的顏色,只是將colour顏色屬性指定給離散變量cut或者連續變量depth,而輸出的圖表已經完成了默認的離散顏色映射和連續顏色漸變映射。
對于以上兩種類型顏色使用場景,如果是要自行修改,則需要自行定義顏色標度:
離散顏色標度:
scale_colour_XXX:
這里最經常適用的三種情況
第一種情況,使用ggthemes包中的顏色主題,其中有些非常流行的顏色主題,如經濟學人的主題scale_colour_economist()、scale_colour_wsj(),還有excel的主題、tableau主題以及stata主題。
第二種情況,可以使用RColorBrewer包中的配色卡,以下是該包scale_colour_brewer()函數所允許使用的所有離散顏色色卡。
該配色系統方案給予我們三種關于分類變量的配色場景:
同色系方案,即在同一個色系中均勻取出若干個色段,用于分類變量填充,最終呈現的效果,看起來非常清爽,圖中最上面的一排顏色均為此類。(適用于表達有序因子分類變量,比如GDP的分段呈現等)
二分色系方案,即兩個色系方向平滑過渡,均勻取值,中間色一般為白色或者淡色。(適用于表達含有正負值的分類數量段,譬如增長率指標、利潤率等)
多分類不同色系方案,取不同色系相對協調的一組顏色,這種情況比較適合用于表達僅作分類,分類項之間沒有順序和大小的普通情況。
以上色卡以及配色包是由一個著名的專做地圖可視化配色方案的團隊所開發的,網址如下,提供在線配色并免費下載服務。(網站可能被屏蔽,如無法打開需要使用VPN)
http://colorbrewer2.org/#
當然第三種就是自己DIY了,R支持直接調用可識別的顏色名稱以及顏色代碼(16進制代碼)。
scale_fill_manual(values=c("#FB882C","#5B88A0"))
或者
scale_fill_manual(values=c("Linen","Peru","PeachPuff","SandyBrown","Chocolate"))
而針對連續型變量顏色修改的情況,可探討的余地不多:
scale_fill_gradient()
scale_fill_gradient2()
scale_fill_gradient()允許分配一組雙色連續漸變,low="white",high="red"
scale_fill_gradient2()允許分配一組三色連續漸變,low="blue",mid="white",high="red"
接下來針對以上幾種情況,我分別演示一個案例:
library("ggthemes")
library("RColorBrewer")
離散型:
###使用ggthemes包中的顏色主題(華爾街日報的主題色模板)
ggplot(diamonds,aes(carat,price,colour=cut))+geom_point()+scale_colour_wsj()
###使用RColorBrewer包中的配色卡
ggplot(diamonds,aes(carat,price,colour=cut))+geom_point()+scale_colour_brewer(palette="Greens")
###使用DIY方式自己制作配色卡
ggplot(diamonds,aes(carat,price,colour=cut))+geom_point()+scale_colour_manual(values=c("#84CEFC","#ACDAE4","#5C9EA4","#04FEFC","#4CD2CC"))
連續型:
雙色漸變:
ggplot(diamonds,aes(carat,price,colour=depth))+geom_point()+scale_colour_gradient(low="white",high="Blue")
三色漸變:
ggplot(diamonds,aes(carat,price,colour=depth))+geom_point()+scale_colour_gradient2(low="#8E0F2E", mid="#BFBEBE", high="#0E4E75")
“R語言可視化中ggplot圖表配色技巧”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。