# coding:utf-8
import pandas as pd
import numpy as np
from matplotlib import pylab as plt # 導(dǎo)入數(shù)據(jù)可視化庫Matplotlib并重命名為plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用來正常顯示中文標(biāo)簽
plt.rcParams['axes.unicode_minus']=False # 用來正常顯示負(fù)號(hào)
newData = pd.read_csv("newCreateData.csv")
newData["DATE"] = pd.to_datetime(newData["DATE"]) # 轉(zhuǎn)換日期格式
newTest = newData[0:11]
plt.plot(newTest["DATE"], newTest["VALUE"]) # plot()方法分別對(duì)應(yīng)折線圖中的x,y坐標(biāo)
plt.xticks(rotation = 45) # 橫坐標(biāo)的數(shù)據(jù)旋轉(zhuǎn)45°
plt.xlabel("DATE") # X軸取名為DATE
plt.ylabel("VALUE") # Y軸取名為VALUE
plt.title(u"潤博的數(shù)據(jù)分析學(xué)習(xí)筆記") # 標(biāo)題取名
plt.show() # 可視化顯示
print("*********子圖繪制****************")
# 創(chuàng)建一個(gè)畫圖對(duì)象,相當(dāng)于一個(gè)畫圖區(qū)域
fig = plt.figure(figsize=(6,6)) # figsize指定給個(gè)圖大小(兩個(gè)數(shù)字分別表示橫軸縱軸)
# 前面兩個(gè)數(shù)字代表行數(shù),列數(shù),最后一個(gè)數(shù)字代表第幾個(gè)圖,從左到右,從上到下看
ax1 = fig.add_subplot(2, 2, 1) # 2行2列的圖,相當(dāng)于四個(gè)圖,1是第一個(gè)
ax2 = fig.add_subplot(2, 2, 3) # 2行2列的圖,相當(dāng)于四個(gè)圖,3是第三個(gè)
ax4 = fig.add_subplot(2, 2, 4) # 2行2列的圖,相當(dāng)于四個(gè)圖,4是第四個(gè)
ax1.plot(np.arange(5), np.arange(5)) # 子圖1繪制
ax2.plot(np.arange(10), np.random.random(size=10)) # 子圖4隨機(jī)繪制
plt.title(u"潤博的數(shù)據(jù)分析學(xué)習(xí)筆記") # 標(biāo)題取名
plt.show()
fig1 = plt.figure(figsize=(6,3))
# 下面為在一個(gè)區(qū)域畫2個(gè)圖
plt.plot(np.random.random(size=12), newData[0:12]["VALUE"], c = "red") # c指定顏色
plt.plot(np.random.random(size=12), newData[12:24]["VALUE"], c = "blue")
plt.title(u"潤博的數(shù)據(jù)分析學(xué)習(xí)筆記") # 標(biāo)題取名
plt.show()
print("********循環(huán)畫5個(gè)圖*************")
fig2 = plt.figure(figsize=(10,6))
colors = ["red", "yellow", "blue", "black", "pink"]
for i in range(5):
? ? fIndex = i * 12
? ? eIndex = (i + 1) * 12
? ? subset = newData[fIndex:eIndex]
? ? plt.plot(np.arange(1,13), subset["VALUE"], c = colors[i])
plt.title(u"潤博的數(shù)據(jù)分析學(xué)習(xí)筆記") # 標(biāo)題取名
plt.show()
print("**********圖標(biāo)繪制*************")
x = np.linspace(0, 10, 20) # 構(gòu)造20個(gè)從0到10均勻增長的數(shù)
fig, axes = plt.subplots() # 創(chuàng)建一個(gè)fig和axes對(duì)象
axes.set_xlabel('x lable')
axes.set_ylabel('y lable')
axes.set_title('title')
axes.plot(x, x**2) # x**2表示x的平方
axes.plot(x, x**3) # x**3表示x的立方
# loc 參數(shù)標(biāo)記圖例位置,1,2,3,4 依次代表:右上角、左上角、左下角,右下角;0 代表自適應(yīng)(可用'best'替代)
axes.legend(["y = x**2", "y = x**3"], loc='best')
plt.title(u"潤博的數(shù)據(jù)分析學(xué)習(xí)筆記") # 標(biāo)題取名
plt.show()
簡(jiǎn)書鏈接:http://www.lxweimin.com/u/43dde81143d0
CSDN鏈接:https://blog.csdn.net/qq_33543737
知乎:https://www.zhihu.com/people/feng-yi-yang-de-nan-ren/activities
微信公眾號(hào):TSL00001111