python绘图-多条曲线绘制在一张图共享横坐标

 

场 景:

两个csv文件,保存了一些数据,第一列为时间,想要得到其他列的量随着时间的变化曲线。

python绘图-多条曲线绘制在一张图共享横坐标_第1张图片

python绘图-多条曲线绘制在一张图共享横坐标_第2张图片

 

import json
import pandas as pd
import os
import matplotlib.pyplot as plt

"""
https://blog.csdn.net/weixin_45683963/article/details/106967614
https://www.jianshu.com/p/c41ac57cea33
"""

if __name__ == '__main__':
    OneFile = " data1.csv"
    otherFile = " data2.csv"
    # print(1234567);
    OneFileData = pd.read_csv(OneFile)
    otherFileData = pd.read_csv(otherFile)
    OneFileData.info()  # 输出读入的csv数据的基本信息
    otherFileData.info()

    listKeys = []  # 将需要绘制的列的名字放到list里面
    listKeys.append('price')
    listKeys.append('quantity')
    xLabelVar = 'time'  # 固定横坐标为第一列

    figurreNumber = 0
    for key in listKeys:
        # print(key)
        plt.figure(figurreNumber)  #新建一个pic,  https://blog.csdn.net/haikuotiankong7/article/details/90551841
        figurreNumber = figurreNumber + 1
        checkedVlaueName = key
        plt.plot(OneFileData[xLabelVar], OneFileData[checkedVlaueName], '-r', label="One")
        plt.plot(otherFileData[xLabelVar], otherFileData[checkedVlaueName], '--b', label="other")

        plt.title("My title")
        plt.ylabel(checkedVlaueName)
        plt.xlabel(xLabelVar)
        plt.grid()  # 生成网格
        plt.legend()  # 显示legend
        #plt.show() # 逐个显示一个图形,点击关闭后继续显示另一个
    plt.show()  # 将所有的图形一下显示出来

 

你可能感兴趣的:(Python)