MatplotlibPython数据分析与机器学习笔记

Python数据可视化库-Matplotlib——折线图绘制

2019-01-16  本文已影响8人  python机器学习学习笔记

# 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.jianshu.com/u/43dde81143d0

CSDN链接:https://blog.csdn.net/qq_33543737

知乎:https://www.zhihu.com/people/feng-yi-yang-de-nan-ren/activities

微信公众号:TSL00001111

上一篇下一篇

猜你喜欢

热点阅读