pyecharts实现星巴克门店分布可视化分析
項(xiàng)目介紹
使用pyecharts對(duì)星巴克門店分布進(jìn)行可視化分析:
全球門店分布/擁有星巴克門店最多的10個(gè)國家或地區(qū);
擁有星巴克門店最多的10個(gè)城市;
門店所有權(quán)占比;
中國地區(qū)門店分布熱點(diǎn)圖。
數(shù)據(jù)背景
該數(shù)據(jù)集來源Kaggle,囊括了截至2017/2月份全球星巴克門店的基礎(chǔ)信息,其中包括品牌名稱、門牌地址、所在國家、經(jīng)緯度等一系列詳細(xì)的信息。
數(shù)據(jù)說明
| 字段名稱 | 類型 | 解釋說明 |
|---|---|---|
| Brand | Object | 品牌名稱,數(shù)據(jù)字典中包含了星巴克旗下的子品牌 |
| Store Number | Object | 門店編號(hào),獨(dú)立且唯一 |
| Store Name | Object | 門店名稱,示例:“北京建國門內(nèi)大街店” |
| Ownership Type | Object | 門店所有權(quán)類型,如:Company Owned |
| Street Address | Object | 門店所在的街道地址 |
| City | Object | 門店所在的城市名稱 |
| State/Province | Object | 門店所在的省份地區(qū) |
| Country | Object | 門店所在的國家或地區(qū),如:US,代表美國 |
| Postcode | Object | 門店所在地址的郵政編碼 |
| Phone Number | Object | 門店的聯(lián)系電話 |
| Timezone | Object | 門店所在地的時(shí)區(qū) |
| Longitude | Float64 | 門店地址的經(jīng)度 |
| Latitude | Float64 | 門店地址的緯度 |
可視化
導(dǎo)入包以及數(shù)據(jù)
import pyecharts
import pandas as pd
import warnings
warnings.filterwarnings("ignore")
data = pd.read_csv('directory.csv')
#讀取文件
Country = pd.read_csv('Country.csv')
#用于替換星巴克門店信息中Country字段簡寫
data = pd.merge(data,Country,left_on='Country',right_on='國際域名縮寫',how = 'left')
星巴克門店全球分布
截止數(shù)據(jù)采集時(shí)間,目前星巴克總共在全球73個(gè)國家和地區(qū)設(shè)有門店,合計(jì)25249家。
temp = data.groupby('Countries and Regions')['Brand'].count().reset_index()
temp.columns = ['國家或地區(qū)','計(jì)數(shù)']
Map = pyecharts.Map("世界地圖 - 不帶標(biāo)記點(diǎn)")
Map.add("國家或地區(qū)",temp['國家或地區(qū)'], temp['計(jì)數(shù)'], maptype="world", is_visualmap=True,style='heatmap',
is_map_symbol_show=False, visual_text_color='#000')
Map
我們可以看見,門店主要還是集中在美洲,亞洲,歐洲,非洲目前只有摩洛哥,埃及和南非設(shè)有門店。
另外有意思的一點(diǎn),整個(gè)澳大利亞只有22家星巴克門店,難道是澳大利亞人不愛喝咖啡嗎,其實(shí)正好相反,因?yàn)榘拇罄麃喨颂姁劭Х攘耍拇罄麃喨藢?duì)咖啡的講究,就像中國人對(duì)茶的挑剔一樣,對(duì)于星巴克這種過于商業(yè)化的連鎖品牌有些難以生存。
其實(shí)除了澳大利亞其實(shí)還有一個(gè)國家更過分,只是由于面積小不容易被注意到,那就是意大利,一家星巴克也沒有(查了一下新聞,星巴克似乎17年3月在意大利開設(shè)了一家)。
擁有星巴克門店最多的10個(gè)國家或地區(qū)
temp = data.groupby('City')['Brand'].count().reset_index()
temp = temp.nlargest(10,'Brand')
temp.columns = ['城市','計(jì)數(shù)']
bar = pyecharts.Bar("星巴克門店數(shù)量TOP10城市", "來源:kaggle",width=1200,height=600)
bar.add("門店數(shù)量", temp['城市'], temp['計(jì)數(shù)'],mark_point=['max'])
bar
畢竟是美國的品牌,美國星巴克門店數(shù)量還是遠(yuǎn)多于其他國家,其次是我們國家,總計(jì)2734家,目前應(yīng)該更多了。
擁有星巴克門店最多10個(gè)城市
看到上面的統(tǒng)計(jì),我們可能會(huì)想到擁有星巴克門店最多的城市應(yīng)該是紐約或者洛杉磯這些美國的超級(jí)城市,其實(shí)最后統(tǒng)計(jì)結(jié)果還有點(diǎn)意外。
temp = data.groupby('City')['Brand'].count().reset_index()
temp = temp.nlargest(10,'Brand')
temp.columns = ['城市','計(jì)數(shù)']
bar = pyecharts.Bar("星巴克門店數(shù)量TOP10城市", "來源:kaggle",width=1200,height=600)
#bar.use_theme('vintage')
bar.add("門店數(shù)量", temp['城市'], temp['計(jì)數(shù)'],mark_point=['max'])
bar
排名第一的既不是紐約也不是洛杉磯,而是上海,擁有542家星巴克門店遠(yuǎn)遠(yuǎn)領(lǐng)先其他城市;
第二是首爾,韓國5000W人口擁有近1000家星巴克門店,首爾出現(xiàn)在第二的位置不算意外,第三是北京,第四才是美國的紐約。
第10名西雅圖,是星巴克總部所在地,除了這個(gè)原因,也許西雅圖程序員也貢獻(xiàn)了不少營業(yè)額。
所有權(quán)分布
這個(gè)需要提前解釋一下,目前星巴克門店的經(jīng)營方式氛圍如下4類:
Company Owned:公司獨(dú)資直營,這也是星巴克門店最多的經(jīng)營方式
Licensed:?許可經(jīng)營
Joint Venture:?合資經(jīng)營,比如:國內(nèi)江浙滬地區(qū)的星巴克最早就是由星巴克與統(tǒng)一集團(tuán)聯(lián)手經(jīng)營,17年7月的時(shí)候星巴克已收回所有權(quán)
Franchise:授權(quán)經(jīng)營,類似麥當(dāng)勞的經(jīng)營模式
temp = data.groupby('Ownership Type')['Brand'].count().reset_index()
temp = temp.nlargest(10,'Brand')
temp.columns = ['Ownership Type','計(jì)數(shù)']
chart = pyecharts.Pie("星巴克門店所有權(quán)分布", "來源:kaggle", title_pos='center')
chart.add("占比", temp['Ownership Type'], temp['計(jì)數(shù)'], is_random=True,
radius=[30, 75], rosetype='radius',
is_legend_show=False, is_label_show=True)
chart
中國區(qū)分布
我們接下來通過熱點(diǎn)圖看下星巴克門店在中國區(qū)內(nèi)的分布情況;
temp = data[data['Country']=='CN'].groupby('City')['Brand'].count().reset_index()
#防坑,門店信息中城市格式不統(tǒng)一,無法使用pyecharts自帶的經(jīng)緯度,自定義添加門店文件自帶的經(jīng)緯度
position = dict(zip(data['City'].values,data[['Longitude','Latitude']].values.tolist()))
chart = pyecharts.Geo("全國門店分布熱點(diǎn)圖", "來源:Kaggle", title_color="#fff", title_pos="center",
width=800, height=600, background_color='#404a59')
chart.add("", temp['City'], temp['Brand'], visual_range=[0, 80], type='heatmap',
visual_text_color="#fff", is_visualmap=True,is_legend_show=False,
geo_cities_coords = position)
chart
毫無意外的最紅的三個(gè)區(qū)域——長三角,珠三角和北京;
中部城市以成都/武漢為首。
TOP20榜單,看看有沒有你所在的城市:
| 城市 | 數(shù)量 |
|---|---|
| 上海市 | 542 |
| 北京市 | 234 |
| 杭州市 | 117 |
| 深圳市 | 113 |
| 廣州市 | 106 |
| 香港 | 104 |
| 成都市 | 98 |
| 蘇州市 | 90 |
| 南京市 | 73 |
| 武漢市 | 67 |
| 寧波市 | 59 |
| 天津市 | 58 |
| 重慶市 | 41 |
| 無錫市 | 40 |
| 西安市 | 40 |
| 佛山市 | 33 |
| 東莞市 | 31 |
| 廈門市 | 31 |
| 青島市 | 28 |
| 常州市 | 26 |
最后
總體來說,星巴克門店主要還是分布在發(fā)達(dá)國家和地區(qū),當(dāng)然也與不同國家地區(qū)的文化有關(guān),我們還是不能武斷地因?yàn)槟膫€(gè)城市,哪個(gè)國家星巴克更多就斷定更發(fā)達(dá)。
另外echarts是由百度團(tuán)隊(duì)開發(fā)的JavaScript可視化圖表庫,目前python中可以直接通過pyecharts調(diào)用,除了豐富的圖表還具有傳統(tǒng)圖表不具有的交互性,強(qiáng)烈推薦各位使用。
skr~skr~~~
總結(jié)
以上是生活随笔為你收集整理的pyecharts实现星巴克门店分布可视化分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在用例之间传递值_接口测试:A12_
- 下一篇: 成本金价是什么