Python數(shù)據(jù)可視化中常見(jiàn)的4種標(biāo)注方式及示例詳解
常見(jiàn)的標(biāo)注方式
- 文本標(biāo)注
- 箭頭標(biāo)注
- 突出標(biāo)注
- 趨勢(shì)線標(biāo)注
讓我們通過(guò)Python實(shí)現(xiàn)來(lái)了解所有這些用于數(shù)據(jù)可視化的標(biāo)注技術(shù)。
文本標(biāo)注
文本標(biāo)注是直接添加到圖表上的簡(jiǎn)短文本注釋,以提供額外的上下文或突出顯示重要的數(shù)據(jù)點(diǎn)。它們對(duì)于注意特定事件以解釋趨勢(shì)或注意數(shù)據(jù)中的異常情況特別有用。例如,在銷售圖表中,可以使用文本標(biāo)注來(lái)標(biāo)記新產(chǎn)品或營(yíng)銷活動(dòng)的推出,以幫助查看者快速了解銷售數(shù)據(jù)波動(dòng)的原因。
下面是一個(gè)使用Python向圖添加文本標(biāo)注的示例:
import matplotlib.pyplot as plt
months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
sales = [100, 120, 90, 150, 200, 230, 210, 190, 220, 240, 250, 270]
plt.plot(months, sales, marker='o')
plt.title('Monthly Sales Data')
plt.xlabel('Month')
plt.ylabel('Sales')
# adding text annotations
plt.text('May', 200, 'Product Launch', fontsize=9, ha='center', color='red')
plt.text('Nov', 250,

箭頭標(biāo)注
箭頭標(biāo)注使用箭頭直接指向圖表上的特定數(shù)據(jù)點(diǎn)或區(qū)域,以突出顯示關(guān)鍵元素或趨勢(shì)。它們?cè)谕怀鲭x群值、指示重大變化或注意數(shù)據(jù)中值得注意的模式方面特別有效。例如,在營(yíng)銷支出與銷售額的散點(diǎn)圖中,箭頭可以指向投資回報(bào)率異常高或異常低的離群值,以明確哪些數(shù)據(jù)點(diǎn)需要進(jìn)一步關(guān)注。
示例:
marketing_spend = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
sales = [12, 25, 27, 35, 50, 52, 60, 65, 78, 85]
plt.scatter(marketing_spend, sales)
plt.xlabel('Marketing Spend (in $1000)')
plt.ylabel('Sales (in $1000)')
# adding arrow annotations
plt.annotate('High ROI', xy=(20, 25), xytext=(30, 40), arrowprops=dict(facecolor='blue', shrink=0.05))
plt.annotate('Low ROI', xy=(60, 52), xytext=(60, 90), arrowprops=dict(facecolor='red', shrink=0.05))
plt.show()

突出標(biāo)注
突出顯示區(qū)域涉及對(duì)圖形的特定區(qū)域進(jìn)行陰影或著色,以引起對(duì)特定時(shí)間段、范圍或區(qū)域的注意。此技術(shù)用于突出顯示數(shù)據(jù)中的關(guān)鍵部分,例如高活動(dòng)期、重大 事件或滿足某些標(biāo)準(zhǔn)的區(qū)域。例如,在市場(chǎng)崩潰期間突出顯示區(qū)域的股票價(jià)格的時(shí)間序列圖可以使觀眾更容易在視覺(jué)上識(shí)別影響期。
下面是一個(gè)使用Python突出顯示圖形中區(qū)域的示例:
import numpy as np
dates = np.arange('2023-01', '2024-01', dtype='datetime64[M]')
stock_prices = np.random.randn(len(dates)).cumsum() + 100
plt.plot(dates, stock_prices)
plt.title('Stock Prices Over Time')
plt.xlabel('Date')
plt.ylabel('Price')
# highlighting an area
plt.axvspan('2023-06', '2023-09', color='yellow', alpha=0.3, label='Summer Period')
plt.legend()

趨勢(shì)線標(biāo)注
趨勢(shì)線是添加到圖形中的線,用于指示數(shù)據(jù)隨時(shí)間或跨變量的一般方向或模式。它們用于可視化數(shù)據(jù)集中的趨勢(shì),平均值或關(guān)系,這有助于識(shí)別長(zhǎng)期運(yùn)動(dòng)和趨勢(shì)。例如,在顯示學(xué)習(xí)時(shí)間和考試分?jǐn)?shù)之間關(guān)系的散點(diǎn)圖中,趨勢(shì)線可以通過(guò)指示更多的學(xué)習(xí)時(shí)間通常導(dǎo)致更高的分?jǐn)?shù)來(lái)說(shuō)明是否存在正相關(guān)性。
下面是一個(gè)使用Python在圖表中添加趨勢(shì)線的示例:
study_hours = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
scores = np.array([50, 55, 60, 65, 70, 75, 80, 85, 90, 95])
plt.scatter(study_hours, scores)
plt.title('Study Hours vs Exam Scores')
plt.xlabel('Study Hours')
plt.ylabel('Scores')
# adding a trend line
m, b = np.polyfit(study_hours, scores, 1)
plt.plot(study_hours, m*study_hours + b, color='red', label='Trend Line')
plt.legend()

總結(jié)
以上這些示例涵蓋了Python數(shù)據(jù)可視化中常見(jiàn)的4種標(biāo)注方式,它們可以單獨(dú)使用或組合使用,以創(chuàng)建更具解釋性和吸引力的圖表。
到此這篇關(guān)于Python數(shù)據(jù)可視化中常見(jiàn)的4種標(biāo)注方式及示例詳解的文章就介紹到這了,更多相關(guān)Python數(shù)據(jù)可視化標(biāo)注方式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django零基礎(chǔ)入門之運(yùn)行Django版的hello world
這篇文章主要介紹了Django零基礎(chǔ)入門之運(yùn)行Django版的hello world,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09
pycharm設(shè)置當(dāng)前工作目錄的操作(working directory)
今天小編就為大家分享一篇pycharm設(shè)置當(dāng)前工作目錄的操作(working directory),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
python 根據(jù)csv表頭、列號(hào)讀取數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了python 根據(jù)csv表頭、列號(hào)讀取數(shù)據(jù)的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05
Pandas之缺失數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了Pandas之缺失數(shù)據(jù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
使用python進(jìn)行廣告點(diǎn)擊率的預(yù)測(cè)的實(shí)現(xiàn)
這篇文章主要介紹了使用python進(jìn)行廣告點(diǎn)擊率的預(yù)測(cè)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
Python字典的概念及常見(jiàn)應(yīng)用實(shí)例詳解
這篇文章主要介紹了Python字典的概念及常見(jiàn)應(yīng)用,結(jié)合實(shí)例形式詳細(xì)的分析了Python字典的概念、原理、創(chuàng)建、常見(jiàn)操作函數(shù)與使用注意事項(xiàng),需要的朋友可以參考下2019-10-10
Python3爬蟲里關(guān)于識(shí)別微博宮格驗(yàn)證碼的知識(shí)點(diǎn)詳解
在本篇文章里小編給大家分享了關(guān)于Python3爬蟲里關(guān)于識(shí)別微博宮格驗(yàn)證碼的知識(shí)點(diǎn),有興趣的朋友們可以參考下。2020-07-07
Django和Flask框架優(yōu)缺點(diǎn)對(duì)比
這篇文章主要介紹了Django和Flask框架相關(guān)對(duì)比,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10
python中httpx庫(kù)的詳細(xì)使用方法及案例詳解
httpx 是一個(gè)現(xiàn)代化的 Python HTTP 客戶端庫(kù),支持同步和異步請(qǐng)求,功能強(qiáng)大且易于使用,它比 requests 更高效,支持 HTTP/2 和異步操作,以下是 httpx 的詳細(xì)使用方法,感興趣的小伙伴跟著小編一起來(lái)看看吧2025-02-02

