zoukankan      html  css  js  c++  java
  • 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/

  • 相关阅读:
    How to implement long running flows, sagas, business processes or similar
    What are long running processes?
    The Microservices Workflow Automation Cheat Sheet
    cget cmake 包管理工具
    buckaroo 试用
    buckaroo 去中心化的c++包管理工具
    What's New In Zeebe: Scaling Zeebe, New Client APIs, Faster Requests, Timestamps, NodeJS Client, and Default Topic is Back!
    Benchmarking Zeebe: An Intro to How Zeebe Scales Horizontally and How We Measure It
    Architecture options to run a workflow engine
    camunda 开源的bpm系统
  • 原文地址:https://www.cnblogs.com/hewanli/p/12183432.html
Copyright © 2011-2022 走看看