<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          28個(gè)數(shù)據(jù)可視化圖表的總結(jié)和介紹

          共 7036字,需瀏覽 15分鐘

           ·

          2023-03-08 08:28



          來源DeepHub IMBA

          本文約3800字,建議閱讀10+分鐘

          本文是一篇關(guān)于數(shù)據(jù)可視化的完整文章,尤其是展示了地理位置可視化的一些方法。


          數(shù)據(jù)可視化本身就是一種通用語(yǔ)言。我們這里通用語(yǔ)言的意思是:它能夠向各行各業(yè)的人表示信息。它打破了語(yǔ)言和技術(shù)理解的障礙。數(shù)據(jù)是一些數(shù)字和文字的組合,但是可視化可以展示數(shù)據(jù)包含的信息。

          “數(shù)據(jù)可視化有助于彌合數(shù)字和文字之間的差距”——Brie E. Anderson。

          有許多無代碼/少代碼的數(shù)據(jù)可視化工具,如tableau、Power BI、Microsoft Excel等。但是作為一名數(shù)據(jù)科學(xué)從業(yè)者最好的工具還是Python。所以在我們進(jìn)行數(shù)據(jù)科學(xué)項(xiàng)目的時(shí)候,一定要注意數(shù)據(jù)可視化,因?yàn)檫@是表示信息和洞察數(shù)據(jù)的最簡(jiǎn)單方法。

          所以在這篇文章中,我們將整理我們能看到的所有數(shù)據(jù)可視化圖表。如果你是數(shù)據(jù)科學(xué)初學(xué)者,那么本文將是最適合你的。

          數(shù)據(jù)可視化是一種以圖形方式表示數(shù)據(jù)和信息的方法。它可以被描述為使用圖表、動(dòng)畫、信息圖等將數(shù)據(jù)轉(zhuǎn)換為能夠可視化的上下文。它有助于發(fā)現(xiàn)數(shù)據(jù)的趨勢(shì)和模式。

          如果給你一個(gè)包含數(shù)百行的表格格式的數(shù)據(jù)集,你將感到困惑。但是適當(dāng)?shù)臄?shù)據(jù)可視化可以幫助你獲得數(shù)據(jù)的正確趨勢(shì)、異常值和模式等等。

          初級(jí)數(shù)據(jù)可視化

          這里我們總結(jié)了9個(gè)基礎(chǔ)的數(shù)據(jù)可視化圖,這些都是我們?cè)谌粘9ぷ髦谐S玫囊彩亲詈?jiǎn)單的圖表。

          • 頻率表

          頻率是一個(gè)數(shù)值出現(xiàn)的次數(shù)的計(jì)數(shù)。頻率表是用表格表示頻率的一種方式。表格如下所示。

          • Scatter Plot

          散點(diǎn)圖是一種在二維坐標(biāo)系中繪制兩個(gè)數(shù)值變量的方法。通過散點(diǎn)圖我們可以很容易地可視化數(shù)據(jù)分布。

          • Line Plot

          折線圖類似于散點(diǎn)圖,但點(diǎn)是用連續(xù)的線按順序連接起來的。在二維空間中尋找數(shù)據(jù)流時(shí),折線圖更加直觀。

          上圖可以看到weight是如何連續(xù)變化的。

          • Bar Chart

          柱狀圖主要用于用柱狀表示類別變量的出現(xiàn)頻率。柱的不同高度表示頻率大小。

          • Histogram

          方圖的概念與條形圖相同。在柱狀圖中頻率顯示在分類變量的離散條中,而直方圖顯示連續(xù)間隔的頻率。它可以用于查找區(qū)間內(nèi)連續(xù)變量的頻率 。

          • Pie Chart

          餅圖以圓形的方式以百分比表示頻率。每個(gè)元素根據(jù)其頻率百分比持有圓的面積。

          • Exploded Pie Chart

          展開餅圖和餅圖是一樣的。在展開餅圖中,可以展開餅圖的一部分以突出顯示元素。

          • Distribution Plot

          分布圖可以顯示連續(xù)變量的分布。

          • Box Plot

          箱線圖是一種基于五數(shù)匯總(“最小值”、第一四分位數(shù) [Q1]、中位數(shù)、第三四分位數(shù) [Q3] 和“最大值”)顯示數(shù)據(jù)分布的標(biāo)準(zhǔn)化方法。它可以顯示異常值等信息。

          中級(jí)數(shù)據(jù)可視化

          中級(jí)的可視化圖表是對(duì)基礎(chǔ)可視化圖表的延伸,我們這里總結(jié)了8個(gè)圖表。

          • Stacked Bar Chart

          堆疊柱狀圖是一種特殊的柱狀圖。我們可以在堆疊柱狀圖中集成比傳統(tǒng)柱狀圖[2]更多的信息。

          • Grouped Bar Chart

          “分組柱狀圖”這個(gè)名字意味著——它是一種分成不同組的特殊類型的柱狀圖。它主要用于比較兩個(gè)分類變量。

          • Stacked Area Chart

          堆疊面積圖將幾個(gè)區(qū)域序列疊加在一起進(jìn)行繪制。每個(gè)序列的高度由每個(gè)數(shù)據(jù)點(diǎn)中的值決定。

          • Pareto Diagram

          帕累托圖包括柱狀圖和折線圖,其中各個(gè)值由柱狀圖降序表示,直線表示累計(jì)總數(shù)。

          • Donut Chart

          環(huán)形圖是一個(gè)以圓心為切口簡(jiǎn)單的餅狀圖。雖然它和餅圖表達(dá)的意思是一樣的,但它也有一些優(yōu)點(diǎn):在餅圖中我們經(jīng)常會(huì)混淆每個(gè)類別所共享的區(qū)域。由于餅圖的中心從環(huán)形圖中移除,所以它可以強(qiáng)調(diào)讀者要關(guān)注餅圖的外弧線,同時(shí)內(nèi)圈也可以用來顯示額外的信息。

          • Heatmap

          熱圖是一個(gè)可以分為多個(gè)子矩形的矩形圖,它用不同顏色表示不同的值/強(qiáng)度。

          • Radar Chart

          雷達(dá)圖是一種以二維圖表的形式顯示多元數(shù)據(jù)的圖形方法,三個(gè)或更多變量在從同一點(diǎn)開始的軸上進(jìn)行表示。來自中心的輻條稱為半徑,代表變量的數(shù)值。半徑之間的角度不包含任何信息。

          • Treemap

          矩形樹圖用嵌套的矩形形式顯示層次數(shù)據(jù)。

          高級(jí)數(shù)據(jù)可視化

          這些圖都比較復(fù)雜,一般情況下可能也不太常見,但是在處理特定任務(wù)時(shí)卻非常好用。這里總結(jié)了10個(gè)相關(guān)的圖表。

          • Parallel Coordinate Plot

          因?yàn)槲覀兩钤谌S空間,所以一般的可視化最多處理3維的數(shù)據(jù)。但有時(shí)需要可視化超過 3 維的數(shù)據(jù),我們經(jīng)常使用 PCA 或 t-SNE 來降維并繪制它。在降維的情況下,可能會(huì)丟失大量的信息。并且有時(shí)我們需要考慮所有特征,這時(shí)就需要平行坐標(biāo)圖。

          • Hexagonal Binning

          六邊形分箱圖是用六邊形直觀表示二維數(shù)值數(shù)據(jù)點(diǎn)密度方法。

          • Contour Plot

          2D等高線密度圖是可視化特定區(qū)域內(nèi)數(shù)據(jù)點(diǎn)密度的另一種方法。它可以方便地找到兩個(gè)數(shù)值變量的密度。例如下面的圖表顯示了每個(gè)陰影區(qū)域中有多少個(gè)數(shù)據(jù)點(diǎn)。

          • QQ-Plot

          QQ代表分位數(shù)-分位數(shù)圖。這是一種直觀地檢查數(shù)值變量是否符合正態(tài)分布的方法。

          • Violin Plot

          小提琴圖和箱形圖是相關(guān)的。從小提琴圖中可以得到的另一個(gè)信息是密度分布。簡(jiǎn)單地說它是一個(gè)與密度分布集成的箱形圖。

          • Boxen Plot

          Boxen Plot是seaborn庫(kù)引入的一種新型箱形圖。對(duì)于箱線圖的方框是在四分位上創(chuàng)建的。但在Boxen plot中,數(shù)據(jù)被劃分為更多的分位數(shù)。它可以提供了關(guān)于數(shù)據(jù)的更多見解。

          • Point Plot

          點(diǎn)坐標(biāo)圖包含了一些名為誤差線的線的折線圖。

          通過上圖所示的點(diǎn)的位置來表示數(shù)值變量的集中趨勢(shì),誤差線表示變量的不確定性(置信區(qū)間)。繪制折線圖是為了比較數(shù)值變量在不同類別值下的變異性。

          • Swarm plot

          分簇散點(diǎn)圖是另一個(gè)受“beeswarm”啟發(fā)的有趣圖表,我們可以了解不同的分類值如何沿?cái)?shù)值軸分布 。

          • Word Cloud

          在詞云圖中,所有的單詞都被繪制在一個(gè)特定的區(qū)域,頻繁出現(xiàn)的單詞被高亮顯示用較大的字體顯示。

          • Sunburst Chart

          旭日?qǐng)D是環(huán)行圖或餅圖的定制版本,它將一些額外的層次信息集成到圖中。

          地理空間數(shù)據(jù)可視化

          地理空間數(shù)據(jù)可視化側(cè)重于數(shù)據(jù)與其物理位置之間的關(guān)系,地理空間可視化的獨(dú)特之處在于其規(guī)模都不較大。

          地理可視化將變量疊加在地圖上,使用緯度和經(jīng)度來顯示信息。

          地圖是地理空間可視化的主要焦點(diǎn)。它們的范圍從描繪街道、城鎮(zhèn)、公園或分區(qū)到顯示一個(gè)國(guó)家、大陸或整個(gè)星球的邊界。它們充當(dāng)額外數(shù)據(jù)的容器。它們可以幫助識(shí)別問題、跟蹤變化、理解趨勢(shì),并執(zhí)行與特定地點(diǎn)和時(shí)間相關(guān)的預(yù)測(cè)。所以這里單獨(dú)將其提出說明

          一些用于地理空間數(shù)據(jù)可視化的python庫(kù)和工具

          tableau, power b.i., ArcGIS, QGIS等都可以用于復(fù)雜的地理空間數(shù)據(jù)可視化。python中也有很多也非常適合地理空間數(shù)據(jù)可視化的庫(kù),例如

          • Geoplot
          • Folium
          • Geopandas
          • PySAL
          • rworldmap
          • rworldxtra
          • 等等

          我將使用Folium來展示可視化的一些實(shí)現(xiàn)。

          這里使用了HIFLD的醫(yī)院數(shù)據(jù)集,其中包含醫(yī)院位置和其他醫(yī)院信息。根據(jù)授權(quán)信息這個(gè)數(shù)據(jù)是可以被公開展示的

          主數(shù)據(jù)集中有34個(gè)特征。出于演示目的,我將使用“ADDRESS”、“STATE”、“TYPE”、“STATUS”、“POPULATION”、“LATITUDE”、“LONGITUDE”這些特征。其中“LATITUDE”和“LONGITUDE”將用于確定醫(yī)院在地圖上的位置,而其他列如STATE、TYPE和STATUS用于過濾,最后ADDRESS和POPULATION用作自定義地圖上的標(biāo)記的元數(shù)據(jù)。

          • 繪制基本地圖

          導(dǎo)入繪制地圖所需的庫(kù):

           import pandas as pd import folium from folium.plugins import MarkerCluster

          加載數(shù)據(jù)集:

           hosp_df = pd.read_csv('/work/Hospitals.csv')


          過濾數(shù)據(jù):


           WORKING_COLS = ["ADDRESS", "STATE", "TYPE", "STATUS", "POPULATION", "LATITUDE", "LONGITUDE"] STATE = "CA" hosp_df = hosp_df.loc[hosp_df["STATE"] == STATE, WORKING_COLS] hosp_df.head(5)

          一些數(shù)據(jù)預(yù)處理:

           hosp_df = hosp_df[hosp_df["POPULATION"] >= 0] hosp_df.describe()

          • 繪制地圖

          Folium提供了.Map() ,它將位置參數(shù)作為包含一對(duì)緯度和經(jīng)度的列表,并圍繞給定位置生成一個(gè)地圖,自動(dòng)將生成的地圖會(huì)圍繞數(shù)據(jù)居中。

           m=folium.Map(     location=[hosp_df["LATITUDE"].mean(), hosp_df["LONGITUDE"].mean()],     zoom_start=6) m

          圖中三角的點(diǎn)就是我們數(shù)據(jù)集中包含的數(shù)據(jù)點(diǎn)

          • 添加圖層

          Folium 中的默認(rèn)地圖是 OpenStreetMap。我們可以添加具有不同圖層,例如 Stamen Terrain、Stamen Water Color、CartoDB Positron 等,得到不同的圖層表示。

          使用 folium.TileLayer 將多個(gè)圖層添加單個(gè)地圖中,并使用folium.LayerControl以交互方式進(jìn)行切換。

           m=folium.Map(     location=[hosp_df["LATITUDE"].mean(), hosp_df["LONGITUDE"].mean()],     zoom_start=6) folium.TileLayer('cartodbdark_matter').add_to(m) folium.TileLayer('cartodbpositron').add_to(m) folium.TileLayer('Stamen Terrain').add_to(m) folium.TileLayer('Stamen Toner').add_to(m) folium.TileLayer('Stamen Water Color').add_to(m) folium.LayerControl().add_to(m) m

          可以看到右上角出現(xiàn)了圖層選擇的按鈕。

          • 生成地圖標(biāo)記

          在交互式地圖中,標(biāo)記對(duì)于指定位置非常重要。folium.Marker可以在給定位置創(chuàng)建一個(gè)標(biāo)記。

           m=folium.Map(     location=[hosp_df["LATITUDE"].mean(), hosp_df["LONGITUDE"].mean()],     zoom_start=8)
          hosp_df.apply( lambda row: folium.Marker( location=[row['LATITUDE'], row['LONGITUDE']] ).add_to(m), axis=1) m

          • 自定義標(biāo)記

          也可以使用自定義標(biāo)記:

           m=folium.Map(     location=[hosp_df['LATITUDE'].mean(), hosp_df['LONGITUDE'].mean()],     zoom_start=8)
          def get_icon(status): if status == "OPEN": return folium.Icon(icon='heart', color='black', icon_color='#2ecc71' ) else: return folium.Icon(icon='glyphicon-off', color='red')
          hosp_df.apply( lambda row: folium.Marker( location=[row['LATITUDE'], row['LONGITUDE']], #color='red', popup=row['ADDRESS'], tooltip='<h5>Click here for more info</h5>', icon=get_icon(row['STATUS']), ).add_to(m), axis=1) m

          • 生成氣泡圖

          為了表示地圖上的數(shù)值,我們可以通過將圓半徑與其在數(shù)據(jù)集中的值綁定來繪制不同大小的圓。在我們的例子中,我們用每個(gè)中心表示覆蓋的人口,其半徑與其population值成正比。

           m=folium.Map(     location=[hosp_df['LATITUDE'].mean(), hosp_df['LONGITUDE'].mean()],     zoom_start=8)
          def get_radius(pop): return int(pop / 20)
          hosp_df.apply( lambda row: folium.CircleMarker( location=[row['LATITUDE'], row['LONGITUDE']], radius=get_radius(row['POPULATION']), popup=row['ADDRESS'], tooltip='<h5>Click here for more info</h5>', stroke=True, weight=1, color="#3186cc", fill=True, fill_color="#3186cc", opacity=0.9, fill_opacity=0.25, ).add_to(m), axis=1) m

          • 生成標(biāo)記簇

          在數(shù)據(jù)點(diǎn)密集地圖上工作時(shí),使用標(biāo)記簇可以以避免許多附近標(biāo)記相互重疊造成的混亂的情況。Folium 提供了一種設(shè)置標(biāo)記簇的簡(jiǎn)單方法,將它們添加到 folium.plugins.MarkerCluster 實(shí)例。

           m=folium.Map(     location=[hosp_df['LATITUDE'].mean(), hosp_df['LONGITUDE'].mean()],     zoom_start=8)
          cluster = MarkerCluster(name="Hospitals")
          def get_icon(status): if status == "OPEN": return folium.Icon(icon='heart', color='black', icon_color='#2ecc71' ) else: return folium.Icon(icon='glyphicon-off', color='red')
          hosp_df.apply( lambda row: folium.Marker( location=[row['LATITUDE'], row['LONGITUDE']], popup=row['ADDRESS'], tooltip='<h5>Click here for more info</h5>', icon=get_icon(row['STATUS']), ).add_to(cluster), axis=1) cluster.add_to(m) m

          當(dāng)鼠標(biāo)懸停在一個(gè)標(biāo)記上時(shí),它會(huì)顯示該簇所覆蓋區(qū)域的邊界。這種默認(rèn)行為可以通過將showCoverageOnHover選項(xiàng)設(shè)置為false來取消,如下所示:

           cluster = MarkerCluster(name="Hospitals", options={"showCoverageOnHover": False})


          總結(jié)


          這篇文章有點(diǎn)長(zhǎng),但我完全相信它會(huì)對(duì)你有很大的幫助。我在本文中整理了幾乎所有的可視化圖表概述。這將是一篇關(guān)于數(shù)據(jù)可視化的完整文章,尤其是展示了地理位置可視化的一些方法,希望這篇文章對(duì)你有所幫助。


          作者:Md. Zubair



                 

          瀏覽 39
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日日爽三级片 | 黑人操亚洲比大片 | 操B在线观看视频 | 欧美成人免费性爱 | 日韩精品A片一区二区三区+卡 |