https://www.lixinger.com/裡面可以下載csv文件
需要注意的是,記得刪除第一行最後的 數據來源於:理杏仁網站(lixinger.com) 這句話,文本和時間序列不能一起處理的
第一種方法
import pandas as pd
import matplotlib.pyplot as plt
#需要安裝xlrd pip install xlrd==1.2.0
data = pd.read_excel('data/zhongzheng500.xlsx',sheet_name ='Sheet1',usecols=[0,2,4,5],index_col=[0])
#sheet_name傳遞表格名字。usecols從0開始,確定使用列。index_col使用第0列時間作為索引
data.plot(xticks=pd.date_range('2010-12-02','2020-12-02',freq='M'),rot=90)
#顯示x軸的問題,並旋轉90度,因為我覺得默認的日期太少了
plt.rcParams['font.sans-serif']=['SimHei','SimSun'] #顯示中文標簽
plt.rcParams['axes.unicode_minus']=False
plt.show()
使用data.plot(xticks=pd.date_range(‘2010-12-02’,‘2020-12-02’,freq=‘M’),rot=90)的圖像
不使用data.plot(xticks=pd.date_range(‘2010-12-02’,‘2020-12-02’,freq=‘M’),rot=90)
第二種方法
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
#需要安裝xlrd pip install xlrd==1.2.0
time = pd.read_excel('data/zz500zhishu.xlsx',sheet_name ='Sheet1',usecols=[0])
time_v = time.values
PE = pd.read_excel('data/zz500zhishu.xlsx',sheet_name ='Sheet1',usecols=[2])
PE_v = PE.values
PB = pd.read_excel('data/zz500zhishu.xlsx',sheet_name ='Sheet1',usecols=[4])
PB_v = PB.values
temp = pd.read_excel('data/zz500zhishu.xlsx',sheet_name ='Sheet1',usecols=[5])
temp_v = temp.values
plt.plot(time_v,PE_v)
plt.plot(time_v,PB_v)
plt.plot(time_v,temp_v)
plt.show()
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('data/yiming.csv',na_values=0,index_col=[0],encoding='GBK',usecols=[0,1,2])
data.plot()
plt.rcParams['font.sans-serif']=['SimHei','SimSun'] #顯示中文標簽
plt.rcParams['axes.unicode_minus']=False
#顯示x軸的問題,並旋轉90度
plt.show()
from pyecharts import Line# pip install pyecharts==0.1.9.4
import numpy as np
import pandas as pd
def to_time(T):
time_LIST = []
for time in T:
temp=time.strftime('%Y-%m-%d')
time_LIST.append(temp)
return time_LIST
time = pd.read_excel('data/zz500zhishu.xlsx',sheet_name ='Sheet1',usecols=[0])
time_list = time['時間'].to_list()#將其轉換為list
time_v = to_time(time_list)
PE = pd.read_excel('data/zz500zhishu.xlsx',sheet_name ='Sheet1',usecols=[2])
PE_v = PE['PE溫度'].tolist()#將其轉換為list
line=Line("折線圖")
line.add('PE',time_v,PE_v,mark_point=["max","min"])
line.render('t.html')