中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

R語言可視化中極坐標變換與衍生圖表類型有哪些

發布時間:2021-07-23 09:09:49 來源:億速云 閱讀:111 作者:chen 欄目:大數據

這篇文章主要講解了“R語言可視化中極坐標變換與衍生圖表類型有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“R語言可視化中極坐標變換與衍生圖表類型有哪些”吧!

今天這篇內容會比較雜亂一點,因為會講到ggplot函數中的一大類通過極坐標支持才能呈現出來的圖表效果。

ggplot作圖背后的圖表哲學,沒有給予餅圖(以及衍生出的圓環圖、玫瑰圖等放射狀圖表類型)存在的空間(主要是該包的開發者個人的審美觀,比較反感次坐標軸以及功能類型雷同的重復性圖層函數,所以它寧可開發出分面圖層原理也不愿意增加次坐標軸,不愿意為原本柱形圖可以表達的圖表形式再單獨開發一種功能雷同的餅圖函數)。

但是巧的是,在常見的三種坐標形式中,極坐標轉換可以非常輕松的將常見的柱形圖(條形圖)、堆積柱形圖通過只一句極坐標函數就神奇的轉化為餅圖、玫瑰圖、圓環圖等(不知道是有意為之還是偶然的巧合)。

餅圖需要借助柱形圖結合極坐標進行轉化:

ggplot(diamonds,aes(x=factor(1),fill=cut))+geom_bar()

R語言可視化中極坐標變換與衍生圖表類型有哪些

R語言可視化中極坐標變換與衍生圖表類型有哪些

當使用一個因子變量作為橫軸,使用分類變量進行填充時,該柱形圖變成了單條堆積柱形圖。

接下來我們通過以上函數添加極坐標(注意極坐標的設定是如何影響最終的圖表形式的)

ggplot(diamonds,aes(x=factor(1),fill=cut))+geom_bar()+coord_polar(theta = "y")

R語言可視化中極坐標變換與衍生圖表類型有哪些

ggplot(diamonds,aes(x=factor(1),fill=cut))+geom_bar()+coord_polar(theta = "x")

ggplot(diamonds,aes(x=factor(1),fill=cut))+geom_bar()+coord_polar()

R語言可視化中極坐標變換與衍生圖表類型有哪些

從做出的圖表以及極坐標函數內的參數我們可以看出來,當參數指定為x時,最終柱形圖的x軸會被指定為極坐標的x軸(圓周),而柱形圖的y軸則會成為極坐標的y軸(半徑)。當指定為y軸時,柱形圖的y軸為成為極坐標的x軸(圓周),柱形圖的x軸會成為極坐標的y軸(半徑)。

同時極坐標狀態下,餅圖的半徑是由柱形圖柱形圖寬度決定的,以上圖表中圓心有個空白,如果我們將柱形圖柱形圖寬度定義為1,則會成為正圓。

ggplot(diamonds,aes(x=factor(1),fill=cut))+geom_bar(width=1)+coord_polar(theta = "y")

R語言可視化中極坐標變換與衍生圖表類型有哪些

圖中其他的元素控制方式與往常的柱形圖做法一樣:

去掉極坐標軸的軸刻度標簽,去掉兩個軸標題、更換配色:

ggplot(diamonds,aes(x=factor(1),fill=cut))+geom_bar(width=1)+coord_polar(theta = "y",start=0)+theme(panel.grid = element_blank(),panel.background = element_blank(),axis.text = element_blank(),axis.ticks = element_blank(),axis.title = element_blank())+scale_fill_brewer(palette="Blues")+guides(fill=guide_legend(reverse=TRUE,title=NULL))

R語言可視化中極坐標變換與衍生圖表類型有哪些

當有多個序列時:

ggplot(diamonds,aes(cut))+geom_bar(width=1)

R語言可視化中極坐標變換與衍生圖表類型有哪些

通過極坐標轉換可以實現圓環圖、圓條圖效果:

ggplot(diamonds,aes(cut))+geom_bar(width=1,fill="steelblue",colour="white")+coord_polar(theta = "y",start=0)+theme(panel.grid = element_blank(),panel.background = element_blank(),axis.text.x = element_blank(),axis.title = element_blank())

R語言可視化中極坐標變換與衍生圖表類型有哪些

改變極坐標軸參數設置,可以模擬南丁格爾玫瑰圖效果:

ggplot(diamonds,aes(cut))+geom_bar(width=0.95,fill="#3182BD")+coord_polar(theta = "x",start=0)+theme(panel.grid = element_blank(),panel.background = element_blank(),axis.text.y = element_blank(),axis.ticks= element_blank(),axis.title = element_blank())+ylim(c(-3000,22500))

R語言可視化中極坐標變換與衍生圖表類型有哪些

當然如果你使用的原始柱形圖數據中添加了分類序列(也就是堆積柱形圖),按照上面的方式可以制作更加復雜的圓環圖、堆疊玫瑰圖

ggplot(diamonds,aes(x=color,fill=cut))+geom_bar(width=0.95,colour="white")+coord_polar(theta = "y",start=0)+theme(panel.grid = element_blank(),panel.background = element_blank(),axis.text.x = element_blank(),axis.title = element_blank())+scale_fill_brewer(palette="Blues")+guides(fill=guide_legend(reverse=TRUE,title=NULL))

R語言可視化中極坐標變換與衍生圖表類型有哪些

ggplot(diamonds,aes(x=color,fill=cut))+geom_bar(width=0.95,colour="white")+coord_polar(theta = "x",start=0)+theme(axis.text.y = element_blank(),axis.title = element_blank())+scale_fill_brewer(palette="Blues")+guides(fill=guide_legend(reverse=TRUE,title=NULL))+ylim(c(-2000,12000))+theme_bw()

R語言可視化中極坐標變換與衍生圖表類型有哪些

嘗試著用分面來解決多序列問題:

ggplot(diamonds,aes(x=color,fill=cut))+geom_bar(width=0.95,colour="white")+coord_polar(theta = "x",start=0)+theme(axis.text.y = element_blank(),axis.title = element_blank())+scale_fill_brewer(palette="Blues")+guides(fill=guide_legend(reverse=TRUE,title=NULL))+ylim(c(-2000,6000))+theme_bw()+facet_grid(.~cut)

R語言可視化中極坐標變換與衍生圖表類型有哪些

感謝各位的閱讀,以上就是“R語言可視化中極坐標變換與衍生圖表類型有哪些”的內容了,經過本文的學習后,相信大家對R語言可視化中極坐標變換與衍生圖表類型有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

诏安县| 石家庄市| 西畴县| 昌吉市| 鸡西市| 革吉县| 区。| 商城县| 京山县| 多伦县| 徐闻县| 从化市| 天祝| 长治县| 扶风县| 确山县| 四平市| 大冶市| 剑河县| 延庆县| 凤阳县| 武隆县| 囊谦县| 玉树县| 台南市| 柞水县| 阿克苏市| 油尖旺区| 馆陶县| 鸡东县| 盱眙县| 新乐市| 南投市| 惠来县| 沂源县| 正蓝旗| 临夏市| 盐源县| 郎溪县| 玉田县| 阿勒泰市|