用Excel輕鬆生成數據地圖-以數學建模國賽B題數據舉例

起因

今年的全國大學生數學建模競賽的本科B題需要分析眾包拍照平台的任務定價規律。附件中給了一些任務的經緯度及相關信息和一些用戶的經緯度、信用相關信息。我們拿到這些數據的時候首先想到,這些點在地圖上的位置在哪。說不定將其放到真是地圖上會對我們有所啟發。最開始我採用高德地圖的位置點標註API,但能表達的信息比較少。

此時我想起來當初參觀北京微軟大廈的Center One(微軟新視界) 的時候,看到數據可視化。當時講解員為我們展示了一個大概是是有關於美國的龍捲風的數據的可視化。當時一邊是一人高的展示著密密麻麻的excel表格大屏幕。另一邊講解員在操作一個觸摸屏,將表格中的數據可視化展示,我們可以輕鬆地發現龍捲風的地理分布特徵、發生時間的特徵。藉此,數據分析人員更加容易洞察數據中的信息。

於是我就發現了Excel的這個神奇的功能。本文的介紹主要基於Excel2016。Excel2013中也有Power Map載入項,就是16中的「三維地圖」的前身(微軟改名部日常工作)。Mac 版的Excel中沒有找到此功能。

創建三維地圖

注意,如果文件是xls格式的,地圖那會顯示黑白,可以另存為xlsx格式之後再重新打開,這裡為大家準的是我轉換好的表格。

數據下載

在Excel中打開,點擊插入->三維地圖->打開地圖

進去之後就可以看到這樣的界面,Excel已經自動識別出來表格中的經緯度數據,並且把表格中的點標註到了地圖上。我們第一眼可以發現,此次的數據主要集中在珠三角區域。

數據可視化

光知道在哪沒什麼用,我們還想從地圖上反映一些其他的信息。如果我們想看任務定價在地理位置上的分布情況的話在高度處添加欄位「任務標價」,並設置為平均值。點擊地圖中的方向按鈕可以改變視角,從不同方向觀察。

此時是這裡是默認的「堆積柱形圖」。不太容易看出規律來,我們可以選擇熱力圖。此時我們可以很容易地發現哪些地方的任務均價高(雖然感覺好像沒什麼卵用)。

我們還可以觀察任務完成情況在地圖上的分布情況。我們添加「任務執行情況」欄位,並選擇「無聚合」。

我們此時又可以直觀地觀察到哪些地方成功的任務多,哪些地方失敗的任務多。(雖然我仍舊覺得對於解題沒有什麼卵用,但感覺挺好玩的。)

如果你覺得柱形圖的柱高度太高了,可以在圖層選項裡面進行調整。

我們還可以在上面加圖層。例如把用戶信息加到上面去。賽題原本的數據裡面,沒有把經緯度分開,我在這提供了一份處理好的。

添加圖層

選取用戶數據,點擊插入->三維地圖->將選定數據添加到三維地圖。然後會出現一個新的圖層。

點擊那個小眼睛可以設置隱藏圖層。

我們發現,用戶里有一些來自安徽、重慶、湖南的不知從哪得知該眾包拍照平台的熱心群眾。

我們可以觀察任務地圖上任務價格分布和用戶分布來發現一些規律。在這裡,我們在用戶信息圖層中,選取「用戶id」,選擇「計數-非空」,並選擇「熱力地圖」。任務信息圖層中,選擇「相對標價」,並且選擇「不聚合」,這個相對價格是我用原來的價格減去最低價得到的,這樣更容易看出差別來。然後選擇「氣泡圖」,氣泡大的說明該區域的定價都偏高。還可以調整圖層選項中的「大小」和「厚度」,來得到更好地觀察效果。

綜上,有沒有覺得Excel很神奇!!!

他還能基於時間做一些演示,展現數據隨著時間變化的情況。大家可以自己去繼續探索一波。更多功能可以參考官方文檔。

參考資料:

官方文檔-三維地圖入門(適用於Excel2016)

官方文檔-Power Map入門(適用於Excel2013)


推薦閱讀:

數學建模競賽的一些心得體會(首戰國一大佬的心得體會)
對平底鍋和垃圾的O獎論文的整理和學習[2]
第一次參加美賽如何短時間準備?
第一次參加數學建模比賽,應該怎樣準備?

TAG:數據可視化 | 數學建模 | MicrosoftExcel |