Python數據可視化庫-Matplotlib——折線圖,子圖繪制


# coding:utf-8

import pandas as pd

import numpy as np

from matplotlib import pylab as plt # 導入數據可視化庫Matplotlib並重命名為plt

 

plt.rcParams['font.sans-serif']=['SimHei'] # 用來正常顯示中文標簽

plt.rcParams['axes.unicode_minus']=False # 用來正常顯示負號

 

newData = pd.read_csv("newCreateData.csv")

newData["DATE"] = pd.to_datetime(newData["DATE"]) # 轉換日期格式

newTest = newData[0:11]

 

plt.plot(newTest["DATE"], newTest["VALUE"]) # plot()方法分別對應折線圖中的x,y坐標

plt.xticks(rotation = 45) # 橫坐標的數據旋轉45°

plt.xlabel("DATE") # X軸取名為DATE

plt.ylabel("VALUE") # Y軸取名為VALUE

plt.title(u"潤博的數據分析學習筆記") # 標題取名

plt.show() # 可視化顯示

 

 

print("*********子圖繪制****************")

# 創建一個畫圖對象,相當於一個畫圖區域

fig = plt.figure(figsize=(6,6)) # figsize指定給個圖大小(兩個數字分別表示橫軸縱軸)

# 前面兩個數字代表行數,列數,最后一個數字代表第幾個圖,從左到右,從上到下看

ax1 = fig.add_subplot(2, 2, 1) # 2行2列的圖,相當於四個圖,1是第一個

ax2 = fig.add_subplot(2, 2, 3) # 2行2列的圖,相當於四個圖,3是第三個

ax4 = fig.add_subplot(2, 2, 4) # 2行2列的圖,相當於四個圖,4是第四個

ax1.plot(np.arange(5), np.arange(5)) # 子圖1繪制

ax2.plot(np.arange(10), np.random.random(size=10)) # 子圖4隨機繪制

plt.title(u"潤博的數據分析學習筆記") # 標題取名

plt.show()

 

 

fig1 = plt.figure(figsize=(6,3))

# 下面為在一個區域畫2個圖

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"潤博的數據分析學習筆記") # 標題取名

plt.show()

 

 

print("********循環畫5個圖*************")

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"潤博的數據分析學習筆記") # 標題取名

plt.show()

 

 

print("**********圖標繪制*************")

x = np.linspace(0, 10, 20) # 構造20個從0到10均勻增長的數

fig, axes = plt.subplots() # 創建一個fig和axes對象

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 參數標記圖例位置,1,2,3,4 依次代表:右上角、左上角、左下角,右下角;0 代表自適應(可用'best'替代)

axes.legend(["y = x**2", "y = x**3"], loc='best')

plt.title(u"潤博的數據分析學習筆記") # 標題取名

plt.show()

 

       https://www.cnblogs.com/hewanli/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM