您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“怎么用R語言的ggplot2實現二維密度圖”,內容詳細,步驟清晰,細節處理妥當,希望這篇“怎么用R語言的ggplot2實現二維密度圖”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
分面(Facet)
分面可以讓我們按照某種給定的條件,對數據進行分組,然后分別畫圖。
#在統計變換一節中,提到如果按切工分組作回歸線,顯然圖會很亂,有了分面功能,我們可以分別作圖。
ggplot(small, aes(x=carat, y=price))+geom_point(aes(colour=cut))+scale_y_log10() +facet_wrap(~cut)+stat_smooth()
主題(Theme)
通過ggplot畫圖之后,我們可能還需要對圖進行定制,像title, xlab, ylab這些高頻需要用到的,自不用說,ggplot2提供了ggtitle(), xlab()和ylab()來實現。
但是這個遠遠滿足不了需求,我們需要改變字體,字體大小,坐標軸,背景等各種元素,這需要通過theme()函數來完成。
ggplot2提供一些已經寫好的主題,比如theme_grey()為默認主題,我經常用的theme_bw()為白色背景的主題,還有theme_classic()主題,和R的基礎畫圖函數較像。
別外ggthemes包提供了一些主題可供使用,包括:
theme_economist theme_economist_white
theme_wsj theme_excel
theme_few theme_foundation
theme_igray theme_solarized
theme_stata theme_tufte
require(ggthemes)
p + theme_wsj()
ggplot2_fig20
至于如何改變這些元素,我覺得我之前畫囧字的博文可以做為例子:
fdata.frame(x=x,y=y)
二維密度圖
在這個文檔里,為了作圖方便,我們使用diamonds數據集的一個子集,如果使用全集,數據量太大,畫出來散點就糊了,這種情況可以使用二維密度力來呈現。
ggplot(diamonds, aes(carat, price))+ stat_density2d(aes(fill = ..level..), geom="polygon")+ scale_fill_continuous(high='darkred',low='darkgreen')
ggplot2.fig22
ggplot2實戰
果殼知性里有帖子介紹了個猥瑣邪惡的曲線,引來無數宅男用各種工具來畫圖,甚至于3D動態圖都出來了。這里用ggplot2來畫。3D版本請猛擊此處。
fdata.frame(x=c(x1,x2,x3), y=rep(y,3), type=rep(LETTERS[1:3], each=length(y)))
theta data.frame(x=radius*sin(theta), y=radius*cos(theta))
ggplot(dd, aes(x, y))+geom_path()+theme_null()+xlab("")+ylab("")
讀到這里,這篇“怎么用R語言的ggplot2實現二維密度圖”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。