栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【python】Matplotlib绘制折线图

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【python】Matplotlib绘制折线图

# -*- coding: utf-8 -*-
"""
Created on Wed May 25 22:53:48 2022

@author: xza
"""
import pandas as pd
from matplotlib import pyplot as plt
import numpy as np
def deal(filename):
    #解决中文显示问题
    plt.rcParams['font.sans-serif']=['SimHei']
    plt.rcParams['axes.unicode_minus'] = False
    #设置画布大小
    fig =plt.figure(figsize=(16, 6), dpi=400)
    #读取文件
    df=pd.read_excel("data.xlsx")
    #单独一列,按列转换为list
    station=df['站点'].tolist()
    df=df.drop('站点',axis=1)
    #将表格整体转换为list
    y=np.array(df)
    x=[]
    for i in range(4,23):
        x.append(i)
    #加个空格以便区分前后数字
    for i in range(4,23):
        x.append(str(i)+' ')
    for i in range(len(y)):
        plt.plot(x,y[i],label=station[i])
    #求二维list最大值
    miny = max(max(row) for row in y)
    miny=miny-0.05*miny
    #放置图例
    plt.legend(loc='center',ncol=9,bbox_to_anchor=(0.5, -0.2))
    #放置文字
    plt.text(16, miny,'进站', ha='center')
    plt.text(21, miny,'出站', ha='center')
    #放置垂直线
    plt.axvline(18.5,linestyle='--', color='gray')
    #导出图片
    fig.savefig(filename+".png",bbox_inches = 'tight')
    
L=['一类站点','二类站点','三类站点','四类站点','五类站点']
for i in range(len(L)):
    deal(L[i])
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/932445.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号