如何用Python繪製區域圖?

更新 發佈閱讀 4 分鐘

首先,這是我們的資料:

import pandas as pd

data = pd.read_excel("勞工保險基金每月經營概況.xlsx")
vocus|新世代的創作平台

接著處理一下資料:

data["基金運用餘額(億元)"] = (data["基金運用餘額(金額)"]/100000000).astype("int")

data["基金收益數(億元)"] = (data["基金收益數(金額)"]/100000000).astype("int")

data["年月"] = list(map(lambda x: str(x)[0:4]+"\n"+str(x)[5:7],data["月別"]))

data.drop(columns=["月別","基金運用餘額(金額)","基金收益數(金額)"],inplace=True)
vocus|新世代的創作平台


利用迴圈計算累積收益:

maonylist = []

x = 0
for i in data["基金收益數(億元)"]:
    x = i + x
    maonylist.append(x)

data["累積基金收益數(億元)"] = pd.Series(maonylist)
vocus|新世代的創作平台

整理好資料,我們就可以來繪圖了:

import matplotlib

#設定中文字型​
matplotlib.rc("font",family="Microsoft Yahei")

from matplotlib import pyplot as plt

#設定圖表大小​
plt.figure(figsize=(12,6))

#設定子圖位置​
ax = plt.subplot2grid((1,1),(0,0))

#設定x、y資料​
ax_x = data["年月"]
ax_y1 = data["基金收益數(億元)"]
ax_y2 = data["累積基金收益數(億元)"]
ax_y3 = data["基金運用餘額(億元)"]

#區域圖(fill_between(x,y1,y2)):填充y1、y2間的面積​
ax.fill_between(ax_x,ax_y3,0,label="基金運用餘額",color="darkgray",alpha=0.5)
ax.fill_between(ax_x,ax_y2,0,label="累積基金收益數",color="green",alpha=0.5)
ax.fill_between(ax_x,ax_y1,0,label="基金收益數",color="lightgreen",alpha=0.5)

#設定y軸參數​
ax.set_ylim(0,10000)
ax.set_yticks([2500,5000,7500,10000,12500])
ax.set_yticklabels(["2千\n500億","5千億","7千\n500億","1兆","1兆\n2500億"])

#設定圖例​
ax.legend(loc="upper left")

#設定文字​
for a,b,c,d in zip(ax_x,ax_y1,ax_y2,ax_y3):
    ax.text(a,b+150,str(b)+"億",horizontalalignment="center",color="lightgreen")
    ax.text(a,c+150,str(c)+"億",horizontalalignment="center",color="green")
    ax.text(a,d+150,str(d)+"億",horizontalalignment="center",color="darkgray")

#設定標題​
ax.set_title("2023年3月至2024年3月\n勞工保險基金每月經營概況")
vocus|新世代的創作平台



留言
avatar-img
果農的沙龍
7會員
61內容數
我是果農,這裡有我的人資職涯經驗分享,與我菜鳥般的Python資料分析筆記,還有一些讀書心得,希望對大家有幫助。
果農的沙龍的其他內容
2024/08/30
如何用Python做可調整是否能重複抽獎的程式
Thumbnail
2024/08/30
如何用Python做可調整是否能重複抽獎的程式
Thumbnail
2024/08/23
如何用Python繪製彩色表格
Thumbnail
2024/08/23
如何用Python繪製彩色表格
Thumbnail
2024/08/23
如何調整成Python的日期格式
Thumbnail
2024/08/23
如何調整成Python的日期格式
Thumbnail
看更多
你可能也想看
Thumbnail
當時間變少之後,看戲反而變得更加重要——這是在成為母親之後,我第一次誠實地面對這一件事:我沒有那麼多的晚上,可以任性地留給自己了。看戲不再只是「今天有沒有空」,而是牽動整個週末的結構,誰應該照顧孩子,我該在什麼時間回到家,隔天還有沒有精神帶小孩⋯⋯於是,我不得不學會一件以前並不擅長的事:挑選。
Thumbnail
當時間變少之後,看戲反而變得更加重要——這是在成為母親之後,我第一次誠實地面對這一件事:我沒有那麼多的晚上,可以任性地留給自己了。看戲不再只是「今天有沒有空」,而是牽動整個週末的結構,誰應該照顧孩子,我該在什麼時間回到家,隔天還有沒有精神帶小孩⋯⋯於是,我不得不學會一件以前並不擅長的事:挑選。
Thumbnail
當代名導基里爾.賽勒布倫尼科夫身兼電影、劇場與歌劇導演,其作品流動著強烈的反叛與詩意。在俄烏戰爭爆發後,他持續以創作回應專制體制的壓迫。《傳奇:帕拉贊諾夫的十段殘篇》致敬蘇聯電影大師帕拉贊諾夫。本文作者透過媒介本質的分析,解構賽勒布倫尼科夫如何利用影劇雙棲的特質,在荒謬世道中尋找藝術的「生存之道」。
Thumbnail
當代名導基里爾.賽勒布倫尼科夫身兼電影、劇場與歌劇導演,其作品流動著強烈的反叛與詩意。在俄烏戰爭爆發後,他持續以創作回應專制體制的壓迫。《傳奇:帕拉贊諾夫的十段殘篇》致敬蘇聯電影大師帕拉贊諾夫。本文作者透過媒介本質的分析,解構賽勒布倫尼科夫如何利用影劇雙棲的特質,在荒謬世道中尋找藝術的「生存之道」。
Thumbnail
見諸參與鄧伯宸口述,鄧湘庭於〈那個大霧的時代〉記述父親回憶,鄧伯宸因故遭受牽連,而案件核心的三人,在鄧伯宸記憶裡:「成立了成大共產黨,他們製作了五星徽章,印刷共產黨宣言——刻鋼板的——他們收集中共空飄的傳單,以及中國共產黨中央委員會有關文化大革命決議文的英文打字稿,另外還有手槍子彈十發。」
Thumbnail
見諸參與鄧伯宸口述,鄧湘庭於〈那個大霧的時代〉記述父親回憶,鄧伯宸因故遭受牽連,而案件核心的三人,在鄧伯宸記憶裡:「成立了成大共產黨,他們製作了五星徽章,印刷共產黨宣言——刻鋼板的——他們收集中共空飄的傳單,以及中國共產黨中央委員會有關文化大革命決議文的英文打字稿,另外還有手槍子彈十發。」
Thumbnail
本文在介紹如何用Python繪製各點大小不同的散布圖及用箭頭標註特殊點
Thumbnail
本文在介紹如何用Python繪製各點大小不同的散布圖及用箭頭標註特殊點
Thumbnail
介紹如何用assign函數在Python中建立新欄位
Thumbnail
介紹如何用assign函數在Python中建立新欄位
Thumbnail
本文介紹如何用Python繪製散布圖與迴歸線
Thumbnail
本文介紹如何用Python繪製散布圖與迴歸線
Thumbnail
本文將介紹如何用Python繪製群組直條圖。
Thumbnail
本文將介紹如何用Python繪製群組直條圖。
Thumbnail
這篇文章介紹如何使用Python整理資料成百分比資料以及繪製百分比堆疊直條圖。
Thumbnail
這篇文章介紹如何使用Python整理資料成百分比資料以及繪製百分比堆疊直條圖。
Thumbnail
5 月,方格創作島正式開島。這是一趟 28 天的創作旅程。活動期間,每週都會有新的任務地圖與陪跑計畫,從最簡單的帳號使用、沙龍建立,到帶著你從一句話、一張照片開始,一步一步找到屬於自己的創作節奏。不需要長篇大論,不需要完美的文筆,只需要帶上你今天的日常,就可以出發。征服創作島,抱回靈感與大獎!
Thumbnail
5 月,方格創作島正式開島。這是一趟 28 天的創作旅程。活動期間,每週都會有新的任務地圖與陪跑計畫,從最簡單的帳號使用、沙龍建立,到帶著你從一句話、一張照片開始,一步一步找到屬於自己的創作節奏。不需要長篇大論,不需要完美的文筆,只需要帶上你今天的日常,就可以出發。征服創作島,抱回靈感與大獎!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News