乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      ggplot2玫瑰圖案例——星巴克門店分布圖

       iceer1212 2017-09-16

      今晚
      8點整

      杜雨老師在線課程:

      R語言可視化在商務(wù)場景中的應(yīng)用

      (掃描文末二維碼免費加入課程


      杜雨,EasyCharts團隊成員,R語言中文社區(qū)專欄作者,興趣方向為:Excel商務(wù)圖表,R語言數(shù)據(jù)可視化,地理信息數(shù)據(jù)可視化。個人公眾號:數(shù)據(jù)小魔方(微信ID:datamofang) ,“數(shù)據(jù)小魔方”創(chuàng)始人。

      使用ggplot2制作放射狀玫瑰圖本不是什么難事,僅需將普通單序列柱形圖添加添加一個極坐標轉(zhuǎn)化參數(shù)即可。

      但是遇到比較小清新的案例,還是值得手動操作一下的。

      本文圖片案例來源于DT財經(jīng)關(guān)于星巴克門店分布TOP20城市分布數(shù)據(jù)圖,用色和呈現(xiàn)形式比較友好,所以就信手拿來作為案例分享給大家。


      原圖中并未給出任何實際數(shù)據(jù)(所以需要用眼睛估測了~—~)

      library('rvest')
      library('dplyr')
      library('ggplot2')
      library('grid')
      library('showtext')
      library('Cairo') font.add('myfont','msyh.ttc')

      找一份網(wǎng)上的最新統(tǒng)計數(shù)據(jù)

      url<-'http://bbs./thread-2715502-1-1.html'
      table<-read_html(url,encoding='gbk')%>%html_nodes('td.t_f>table')%>%html_table(header =TRUE,trim =TRUE,fill=TRUE)%>%as.data.frame()

      城市數(shù)據(jù)

      mydata<-data.frame( label=c('上海','北京','杭州','廣州','深圳','蘇州','成都','天津','南京','武漢','寧波','重慶','西安','無錫','廈門','青島','長沙','南通','常州','福州') )

      整理數(shù)據(jù)

      mydata<-merge(mydata,table[,c('城市','門店數(shù)量')],by.x='label',by.y='城市',all.x=TRUE) mydata[mydata$label=='常州','門店數(shù)量']=27
      names(mydata)[2]<-'value'
      mydata<-arrange(mydata,-value)%>%transform(id=1:20,class=c(1,6,rep(1:6,3))) mydata$label<-as.character(mydata$label)
      #標簽拆成單字換行,豎排布局:
      label<-strsplit(mydata$label,'')
      for (i in 1:length(label)){ mydata$label_ff[[i]]<-paste0(label[[i]],collapse='\n') } mydata[1:2,'label_ff']<-c('上海','北京') mydata[16:20,'label_ff']<-c('青島','廈門','常州','福州','南通')
      #計算標簽的旋轉(zhuǎn)角度:
      mydata$angle=c(rev(9*(1:10-1) 4.5),-(9*(1:10-1) 4.5)) mydata$angle[16:20]<-rev(9*(1:5-1) 4.5)

      圖形可視化過程:

      p<-ggplot(mydata) geom_col(aes(x=id,y=value,fill=factor(class))) geom_hline(yintercept =c(25,50,100,200,500),linetype=2,size=.25) geom_text(aes(x=id,y=value 12,label=label_ff,angle=angle),family='myfont',size=3.5,lineheight=1) #坐標軸放大一倍占位:scale_x_continuous(limits=c(0,40),expand=c(0,0)) #Y延伸到負值突出圓心的空白scale_y_continuous(limits=c(-100,600)) scale_fill_manual(values=c('#00643E','#207A57','#3D8C6D','#59A284','#76B69B','#95CBB3'),guide=FALSE) coord_polar(start=-14.245) theme_void();p

      圖形輸出:

      setwd('E:/數(shù)據(jù)可視化/R/R語言學(xué)習(xí)筆記/數(shù)據(jù)可視化/ggplot2/優(yōu)秀R語言案例') CairoPNG(file='polar_rose.png',width=2400,height=1800) showtext.begin() grid.newpage() pushViewport(viewport(layout=grid.layout(6,8))) vplayout<-function(x,y){viewport(layout.pos.row =x,layout.pos.col=y)} print(p,vp=vplayout(1:6,1:8)) showtext.end() dev.off()

      局部線條經(jīng)過手工修飾!

      以上就是整個制圖過程,其中關(guān)于角度轉(zhuǎn)換以及細節(jié)處理問題均省略掉了,如需了解可以 單獨交流。

      好了干貨完了,下面是一波廣告:


      9月12日晚8~10點,本小編有一場關(guān)于ggplot2的微課,主要內(nèi)容如下:

      1、ggplot2圖層語法的核心理念
      2、ggplot函數(shù)與geom_xxx函數(shù)間的父子繼承關(guān)系
      3、美學(xué)映射參數(shù)寫在ggplot函數(shù)內(nèi)與寫在geom_xxx內(nèi)的差異
      4、美學(xué)映射參數(shù)寫在aes函數(shù)內(nèi)部和寫在aes函數(shù)外部的差異
      5、顏色標度一共有幾種類型和寫法,在不同模塊中是否能夠共用
      6、如何結(jié)合實際業(yè)務(wù)與引用場景進行顏色標度選擇
      7、多圖層疊加時,如何解決顏色標度沖突的問題
      8、分面函數(shù)的權(quán)限控制
      9、主題框架與模塊間的繼承關(guān)系
      10、主題函數(shù)更新與替換方案
      11、圖形輸出與高清抗鋸齒渲染


      其實這些問題都是之前我學(xué)習(xí)過程中走過的彎路,隨著練習(xí)的案例越來越多,這些問題一步步全都解決了,其實如果你能有心看完我的所有關(guān)于ggplot講解部分,差不多這些問題也都能全部理解。

      掃描下方二維碼,免費加入課程

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多