今天瓦特歐要來介紹,大家在excel看到的散佈圖(Scatter diagram)、長條圖
(Bar Graph/Bar Chart)、派餅圖( Pie Chart/Circle Graph),如何在python
環境中做出這樣各種分析圖,幫助大家在沒有matlab軟體或者需要做大量分析圖表時的好幫手!
為了方便學習,先創造一些,資料來做圖,今天就選用台灣最強晶圓廠台積電的資
料來當作主角,現在時間為2022/04/09星期六。
Step1: Import 今天主要的library matplotlib
import matplotlib.pyplot as plt
Step2: 準備今天的資料台積電2022月營收
#台積電月營收
revenue_2021=[1267,1065,1291,1113,1124,1485,1246,1374,1527,1345,1483,1554]
month_2021=[1,2,3,4,5,6,7,8,9,10,11,12]
解說:
revenue_2021是每個月營收的資料,資料格式為list
month_2021為當matplotlib畫圖時需要知道,每個資料的名稱,因此
這邊放入月份
Step3: 輸入畫圖指令
plt.bar(month_2021, revenue_2021)
plt.xlabel(‘Month’)
plt.ylabel(‘Revnue(billion)’)
plt.title(‘TSMC Revnue’)
plt.show()
解說:
plt.bar(x,y) x放入x軸資料,即2021的月份,y軸放入台積電的月營收
xlabel 放入x軸標題名稱
ylabel 放入y軸標題名稱
plt.title放入整張圖片標題名稱
plt.show()
Step4: 觀看畫出的圖
垂直長條圖與完整程式碼:
#TSMC pre month revenue
revenue_2021=[1267,1065,1291,1113,1124,1485,1246,1374,1527,1345,1483,1554]
month_2021=[1,2,3,4,5,6,7,8,9,10,11,12]
plt.bar(month_2021, revenue_2021)
plt.xlabel('Month')
plt.ylabel('Revnue(billion)')
plt.title('TSMC Revnue')
plt.show()
橫向長條圖與完整程式碼:
#TSMC pre month revenue
revenue_2021=[1267,1065,1291,1113,1124,1485,1246,1374,1527,1345,1483,1554]
month_2021=[1,2,3,4,5,6,7,8,9,10,11,12]
plt.barh(month_2021, revenue_2021)
plt.ylabel('Month')
plt.xlabel('Revnue(billion)')
plt.title('TSMC Revnue')
plt.show()
散佈圖與完整程式碼:
#TSMC pre month revenue
revenue_2021=[1267,1065,1291,1113,1124,1485,1246,1374,1527,1345,1483,1554]
month_2021=[1,2,3,4,5,6,7,8,9,10,11,12]
plt.scatter(month_2021, revenue_2021)
plt.xlabel('Month')
plt.ylabel('Revnue(billion)')
plt.title('TSMC Revnue')
plt.show()
派餅圖與完整程式碼:
由於派餅圖比較複雜一些,直接說明在程式碼中~
revenue_2021=[1267,1065,1291,1113,1124,1485,1246,1374,1527,1345,1483,1554]
month_2021=[1,2,3,4,5,6,7,8,9,10,11,12]
#將月份補上英文,讓圓餅圖可以更能理解
for ii in range(len(month_2021)):
month_2021[ii] = 'month_' +str(month_2021[ii])
# 設定圓餅圖大小
plt.figure(figsize=(12,8))
# 依據類別數量,分別設定要突出的距離,由於最大的在12月份,因此瓦特歐
讓第12月份脫離圓心半徑0.25
separeted = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25)
#設定12個顏色讓每個月營收,有不同的顏色方便閱讀~
color = ['#ff0000','#FFA6FF', '#D0D0D0', '#66b3ff', '#28ff28', '#ffff37', '#C2FF68',
'#E6CAFF','#B87070', '#AFAF61','#6FB7B7', '#00E3E3']
# 設定圓餅圖屬性
pictures,category_text,percent_text = plt.pie(
revenue_2021, # 數值
labels = month_2021, # 分類的標記
colors = color, # 顏色設定
autopct = "%0.2f%%", # 四捨五入至小數點後面位數
explode = separeted, # 設定分隔的區塊位置
pctdistance = 0.7, # 數值與圓餅圖的圓心距離
radius = 0.7, # 圓餅圖的半徑,預設是1
center = (-10,0), # 圓餅圖的圓心座標
shadow=False) # 是否使用陰影
# 設定legnd的位置,就是圖例位置~
plt.legend(loc = "best")
# 設定圖片標題
plt.title('TSMC Revnue month')
# 畫出圓餅圖
plt.show()
感謝收看今天的圓餅圖、長條圖、散佈圖範例,如果有更多python需要研究的題
材,歡迎留言給瓦特歐,瓦特歐要是知道相關知識的話,願意寫解說跟各位朋友解說!
瓦特歐Python介紹系列:
[TIL#1] Python 自學 day1 Anaconda
[TIL#2] Python 自學 day2 變數
[TIL#3] Python 自學 day3 流程控制
[TIL#4] Python 自學 day4 製作執行檔
[TIL#5] Python 自學 day5 執行檔更換icon
[TIL#6] Python 自學 day6 PIL浮水印、圖片大小變更
[TIL#7] Python 自學 day7 大量圖片Resize 處理 懶人包
[TIL#8] Python 自學 day8 GUI製作- 使用Tkinter Grid管理器
[TIL#9] Python 自學 day9 GUI製作 放入圖片 grid 版本
[TIL#10] Python 自學 day10 創造圖片的拼貼
[TIL#11] Python 自學 day11 matplotlib 統計圖、長條圖、圓餅圖、散佈圖