repl.it
@yulin1127/

python-basic-hw19-4

Python

No description

fork
loading
Files
  • main.py
  • NotoSansCJK-Black.ttc
  • plot.png
  • stock_data.csv
  • Packager files
  • poetry.lock
  • pyproject.toml
  • requirements.txt
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
myfont = FontProperties(fname=r'./NotoSansCJK-Black.ttc')

# 可使用 encoding 避免編碼問題
df = pd.read_csv('stock_data.csv', encoding='utf-8')

print(df.info())
print(df.describe())

data = (df.loc[:4, ['證券代號','收盤價']])
# 將 證券代號 設為 index,要當作 X 軸使用
data = data.set_index('證券代號')

print(data)
print(type(data['收盤價']))
data['收盤價']= data['收盤價'].astype(float)
# 產生 line chart
fig = data.plot(kind='line').get_figure()
# 設定圖表標頭
plt.ylabel("收盤價",fontproperties=myfont) 
plt.xlabel("證券代號",fontproperties=myfont)
plt.title('Closing Price')
# 儲存成圖片
fig.savefig('plot.png')

#repl.it不曉得如何在matplotlib增加中文字體檔
#這次題目為取出第5筆資料,然後繪圖,但我用matplotlib無法繪出“單點”,'Series' object has no attribute 'set_index' 無該屬性
#data['收盤價']= data['收盤價'].astype(float) AttributeError: 'str' object has no attribute 'astype' 無該屬性
#因上述原因,故這次作業私自改成取出5筆資料 囧