- +1
提升R語言的數(shù)據(jù)可視化效果的五個范例
文獻/ 眾山小 校核/ 張丹云 編輯/ 眾山小
當我開講R語言課程時,開場白通常是:紐約時報的視覺部門或Facebook,現(xiàn)在正在使用這款軟件來挖掘數(shù)據(jù),給出壯美的可視化效果。不過,說完這些之后,我需要努力給出實際的案例,以展示R語言輸出的結(jié)果如何變?yōu)榱钊苏痼@的、信息量巨大的圖片?,F(xiàn)在,這終于不再那么困難了。
去年,我與一位妙人設(shè)計師Oliver Uberti,一起寫了一本書,其中有100多幅關(guān)于倫敦的地圖和信息圖。我們?yōu)檫@本《倫敦:信息之都》制作的絕大部分信息圖,需要利用R語言,呈現(xiàn)某些形狀或形式。R語言可用來做任何事,從簡化數(shù)百萬的GPS數(shù)據(jù),到制作泡泡圖或簡單繪制大量直線。我們每三天就得做出一張圖,以在截止期限前完成,如果復制粘貼R語言的代碼毫無效率,或制作任何圖片都沒有靈活性,那么這本書不可能完成。如果你對利用R語言創(chuàng)作偉大圖片的過程感興趣,請注意下面展示的5組圖片,包括利用R語言剛制作出的草圖,到最后成型的作品。

上圖是至今為止書中最火的一張圖片。該圖利用了2011年的人口普查數(shù)據(jù)制作了不同婚姻狀況的人口分布地圖,并以水流圖的形式展示出了絕對數(shù)量。利用ggplot2包制作出了地圖和圖片。我們堅持使用輸出時地圖的顏色,然后手動編輯水流圖的顏色。水流圖是利用ggplot2包中的geom_ribbon()功能制作的。
#We order by age of when the person startedliving in London, this is the order field.
ggplot(Data,aes(order,origin))+geom_segment(aes(xend=order,yend=Age))+geom_segment(aes(x=order,y=st_age, xend=order, yend=end_age),col="red")+geom_segment(aes(x=order,y=st_age2, xend=order,yend=end_age2), col="yellow")+ coord_polar()
源自微信公眾號“一覽眾山小-可持續(xù)城市與交通”





- 報料熱線: 021-962866
- 報料郵箱: news@thepaper.cn
互聯(lián)網(wǎng)新聞信息服務(wù)許可證:31120170006
增值電信業(yè)務(wù)經(jīng)營許可證:滬B2-2017116
? 2014-2026 上海東方報業(yè)有限公司




