如何用Python繪製折線圖

更新於 2024/04/03閱讀時間約 4 分鐘

首先這是我的資料-台灣好行的公開資料:

import pandas as pd
data = pd.read_csv("opendata.csv")
raw-image

首先,因為資料中113年度的資料只有一月,所以我打算刪除年度為113年的資料:

#建立一個我們不要的年份的行的index的List
ListYearDrop = []

#用列舉的方法建立一個列舉每個年的List,index從0開始
#再用for迴圈,讓每次讀到指定的年份時,就將該年份的index記錄下來
for index, value in enumerate(data["年度"],0):
    if value == 113:
        ListYearDrop.append(index)

#用drop,丟掉我們不要的年份該行的資料
data.drop(index=ListYearDrop,inplace=True)

資料準備好後,我們就可以開始繪圖了

import matplotlib

#選擇中文字體
matplotlib.rc("font",family="Microsoft YaHei")

from matplotlib import pyplot as plt

#繪製圖表大小
plt.figure(figsize=(16,4))

#繪製一個位於包含1X1個子圖的圖且位置在(0,0)的子圖
ax0 = plt.subplot2grid((1,1),(0,0),colspan=1,rowspan=1)

#--------------------------------

#建立x軸資料
ax0_x = data["年度"].astype("str") + "年\n" + data["月份"].astype("str") + "月"

#建立y軸資料(這次我們想呈現兩條折線)
ax0_y1 = data["本月累計搭乘人次"]/10000
ax0_y2 = data["本月電子票證累計使用人次"]/10000

#--------------------------------

##繪製第一條折線圖

#繪圖
ax0.plot(ax0_x,ax0_y1,color="green",label="本月累計搭乘人次")

#決定y軸座標軸上下限
ax0.set_ylim(0,500)

#決定y軸座標軸座標與標籤
ax0.set_yticks([100,200,300,400,500])
ax0.set_yticklabels(["100萬","200萬","300萬","400萬","500萬"])

#--------------------------------

##繪製第二條折線圖
ax0.plot(ax0_x,ax0_y2,color="lightgray",label="本月電子票證累計使用人次")

#--------------------------------

#繪製圖例
ax0.legend(bbox_to_anchor=(0.2,0.95),prop = {"size":10})

#繪製平均線
ax0.hlines(ax0_y1.mean(),0,len(ax0_x)-1,linestyles="--",color="green")
ax0.text(0,ax0_y1.mean()+10,"平均" + str(ax0_y1.mean().round(2)) + "萬",color="green")

ax0.hlines(ax0_y2.mean(),0,len(ax0_x)-1,linestyles="--",colors="lightgray")
ax0.text(0,ax0_y2.mean()+10,"平均" + str(ax0_y2.mean().round(2)) + "萬",color="lightgray")

#設定圖的標題
plt.title("台灣好行:每月累計搭乘人次與電子票證累計使用人次")

plt.tight_layout()
raw-image
























avatar-img
4會員
60內容數
我是果農,這裡有我的人資職涯經驗分享,與我菜鳥般的Python資料分析筆記,還有一些讀書心得,希望對大家有幫助。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
果農的沙龍 的其他內容
本文介紹了如何使用資料樞紐分析的功能來整理所需的資料,並設定圖表的中文字型,最後提供了繪圖的程式碼範例。
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
如何用Python匯入大批Excel檔案? os.listdir建立資料夾內[檔案名稱.副檔名]之列表 利用迴圈將所有檔案匯入Python 用pandas.concat合併所有DataFrame
如何用Python為某欄做分類,例如:判斷分數是否及格 
如何計算某欄的平均數? 如何計算多個欄位的平均數? 如果想計算不同分組的平均數? 如何用Python計算某欄平均數 利用agg計算平均數 利用groupby建立分組,再用agg計算平均數
本文介紹了如何使用資料樞紐分析的功能來整理所需的資料,並設定圖表的中文字型,最後提供了繪圖的程式碼範例。
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
如何用Python匯入大批Excel檔案? os.listdir建立資料夾內[檔案名稱.副檔名]之列表 利用迴圈將所有檔案匯入Python 用pandas.concat合併所有DataFrame
如何用Python為某欄做分類,例如:判斷分數是否及格 
如何計算某欄的平均數? 如何計算多個欄位的平均數? 如果想計算不同分組的平均數? 如何用Python計算某欄平均數 利用agg計算平均數 利用groupby建立分組,再用agg計算平均數
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
設計完一覽表之後,如果會寫程式的人可以每天用這種方法去抓資料放到Excel. 那不會寫程式的人呢? 這裡教你一個稍微要花點時間的輸出Excel的方法。 在上禮拜完成的自選裡。   一、  你先依下圖,在“功能”中找到”輸出到Excel”,按下報價精靈 二、  選擇全部加入,按下全部加
Thumbnail
如何用XQ設置可轉債現股一覽表+產業分類 這個XQ的可轉債功能可說是愈來愈多,但是可能功能太多了,反而設定上會讓大家覺得有點無所適從,今天讓我們來一步一步的完成吧。 如果你要訂XQ,請用老爹的XQ折扣碼,感恩。 XQ優惠碼(可折100) @CBAS168 一、        進入XQ 首頁
Thumbnail
根據RFM的資料來分成8種類型的客戶,1.重要價值客戶2.重要保持客戶3.重要發展客戶4.一般發展客戶5.重要挽留客戶6.一般價值客戶7.一般保持客戶8.一般挽留客戶
Thumbnail
RFM模型是最基本的分析,可以讓你知道哪些是常客、哪些人是偶爾來一次,或是根本不常來,藉此針對不同的客群去做不同的策略,達到提升業績的方法。接下來就讓我教你如何運用PYTHON快速做出RFM分析
有的自閉症者管到無極限,有的自閉症者完全事不關己。 因此,要用自閉症者的學習方式,協助自閉症者見到人際界線。 視覺自閉症者用社交情境故事圖卡,聽覺自閉症者以討論分析狀況為主 之前的文章,有提到用因果關係進行。 而前提是,那是解決事不關己的自閉症者用的。 這次,我想補充的,是管到無極限的自閉症者,進行
Thumbnail
資訊設計百百種,光是「捷運各站進出量」的主題就可以列舉許多案例。PTT 的文字整理可以總覽各站的排名和數據,還能比較漲跌趨勢。泡泡地圖則能夠把數據圖形化和空間化,讓讀者更直觀理解各站之間的差異和相對位置。要設計出好看、好懂、看了會喜歡的圖表,隱含許多設計的學問,需要具被資料處理和美術設計的能力。
Thumbnail
幾年前,偶然的在某社群聽見 Robot Framework 這套開源框架,起初抱持著好奇的心情簡單的玩了一下,不過當時完全不理解,用這種 Keyword 方式去撰寫自動化測試的好處在哪? ( 不過就是…我知識不足罷了XD ) 。 接下來,我就可以跑測試拉~! 接著看 log.html:
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
設計完一覽表之後,如果會寫程式的人可以每天用這種方法去抓資料放到Excel. 那不會寫程式的人呢? 這裡教你一個稍微要花點時間的輸出Excel的方法。 在上禮拜完成的自選裡。   一、  你先依下圖,在“功能”中找到”輸出到Excel”,按下報價精靈 二、  選擇全部加入,按下全部加
Thumbnail
如何用XQ設置可轉債現股一覽表+產業分類 這個XQ的可轉債功能可說是愈來愈多,但是可能功能太多了,反而設定上會讓大家覺得有點無所適從,今天讓我們來一步一步的完成吧。 如果你要訂XQ,請用老爹的XQ折扣碼,感恩。 XQ優惠碼(可折100) @CBAS168 一、        進入XQ 首頁
Thumbnail
根據RFM的資料來分成8種類型的客戶,1.重要價值客戶2.重要保持客戶3.重要發展客戶4.一般發展客戶5.重要挽留客戶6.一般價值客戶7.一般保持客戶8.一般挽留客戶
Thumbnail
RFM模型是最基本的分析,可以讓你知道哪些是常客、哪些人是偶爾來一次,或是根本不常來,藉此針對不同的客群去做不同的策略,達到提升業績的方法。接下來就讓我教你如何運用PYTHON快速做出RFM分析
有的自閉症者管到無極限,有的自閉症者完全事不關己。 因此,要用自閉症者的學習方式,協助自閉症者見到人際界線。 視覺自閉症者用社交情境故事圖卡,聽覺自閉症者以討論分析狀況為主 之前的文章,有提到用因果關係進行。 而前提是,那是解決事不關己的自閉症者用的。 這次,我想補充的,是管到無極限的自閉症者,進行
Thumbnail
資訊設計百百種,光是「捷運各站進出量」的主題就可以列舉許多案例。PTT 的文字整理可以總覽各站的排名和數據,還能比較漲跌趨勢。泡泡地圖則能夠把數據圖形化和空間化,讓讀者更直觀理解各站之間的差異和相對位置。要設計出好看、好懂、看了會喜歡的圖表,隱含許多設計的學問,需要具被資料處理和美術設計的能力。
Thumbnail
幾年前,偶然的在某社群聽見 Robot Framework 這套開源框架,起初抱持著好奇的心情簡單的玩了一下,不過當時完全不理解,用這種 Keyword 方式去撰寫自動化測試的好處在哪? ( 不過就是…我知識不足罷了XD ) 。 接下來,我就可以跑測試拉~! 接著看 log.html: