iT邦幫忙

2025 iThome 鐵人賽

DAY 11
0
AI & Data

從網路爬蟲到資料洞察的應用系列 第 11

畫收盤價趨勢圖(matplotlib 折線圖)

  • 分享至 

  • xImage
  •  

昨天我們已經學會了計算基本統計值,那今天要進一步進行「視覺化」了。透過 matplotlib,我們可以把股票的收盤價變化畫成折線圖,更直觀地觀察股價趨勢。

為什麼要畫趨勢圖?

雖然用數字也能分析股價,但「圖像化」往往能幫助我們更快掌握市場動向。

  • 看出最近股價是否處於上升或下降趨勢
  • 快速辨識波動區間
  • 在投資決策上提供輔助依據

程式碼示範

以下是完整程式碼,使用 matplotlib 來繪製台積電(2330)的收盤價折線圖:

import matplotlib.pyplot as plt

plot_df = df.sort_values(by='Date', ascending=True)

plt.figure(figsize=(12, 6)) 
plt.plot(plot_df['Date'], plot_df['Close'], marker='o', linestyle='-')

plt.title('TSMC (2330) Close Price Trend', fontsize=16)
plt.xlabel('Date', fontsize=12)
plt.ylabel('Close Price', fontsize=12)
plt.grid(True)
plt.gcf().autofmt_xdate()

print("\n正在顯示股價趨勢圖...")
plt.show()  # 顯示圖表

程式碼拆解說明

  1. 排序資料(舊到新)
plot_df = df.sort_values(by='Date', ascending=True)

股票資料通常是「最新日期在前」,但繪圖時我們習慣從左到右代表「由舊到新」,因此需要做排序。

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

避免圖表過小而看不清楚,這裡設定成 12 × 6。

  1. 繪製折線圖
plt.plot(plot_df['Date'], plot_df['Close'], marker='o', linestyle='-')

marker='o':在每個收盤價上加一個圓點。
linestyle='-':使用實線連接。

  1. 標題與標籤
plt.title('TSMC (2330) Close Price Trend', fontsize=16)
plt.xlabel('Date', fontsize=12)
plt.ylabel('Close Price', fontsize=12)

加上標題與軸標籤,讓圖表更容易閱讀。

  1. 格線與日期格式化
plt.grid(True)
plt.gcf().autofmt_xdate()
  • plt.grid(True):加上格線,方便觀察數值位置
  • plt.gcf().autofmt_xdate():避免日期文字擠在一起,自動旋轉排版
  1. 顯示圖表
plt.show()

執行結果

當程式碼執行後,會出現一張折線圖,清楚顯示台積電收盤價的走勢:

  • X 軸:日期(由舊到新)
  • Y 軸:收盤價(數值)
  • 折線:股價隨時間的變化

總結

  • 股票資料在繪圖前要確認時間排序
  • matplotlib 的 plot() 可以快速繪製折線圖
  • 記得加上標題、標籤、格線與日期格式化,圖表會更專業

那今天就先這樣。
/images/emoticon/emoticon29.gif


上一篇
計算基本統計
系列文
從網路爬蟲到資料洞察的應用11
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言