Python如何对多文件数据绘制直方图可视化

Python如何对多文件数据绘制直方图可视化

在进行数据分析可视化的时候,我们经常会将很多文件分别打开并分别作图,如果只是5个以下,那么使用origin绘制也可以,但是如果需要打开8个文件,每个文件绘制5张图,那么合起来将要绘制40张图,这时,我们需要考虑利用电脑来自动完成;
解决问题的思路:
1)将待处理数据的放在同一保存路径下;
2)将打开文件和绘图文件分别包装成函数;
3)利用遍历实现绘图自动化
先展示完整代码:

#模块引入
##########################################
#@Mr Pydaty
#Function:Draw hist
#Time:2020-03-17
#########################################
import numpy as np
import pandas as pd 
import matplotlib.pyplot as plt 
import seaborn as sns
打开文件函数定义
def open(file_name):
    file_path='c:\\Users\\dell\\Desktop\\my_project\\'+file_name+'.csv'
    df=pd.read_csv(file_path)
    return df
绘图函数定义
def hist_plt(column,type):
    #多重赋值,创建画布和轴
    hist,ax=plt.subplots()
    #对打开文件的列表中的特定的列数据进行直方图绘制
    ax=sns.distplot(df[column])
    #设置图的标题
    ax.set_title('Histogram of '+column+' by '+type)
    #设置图的x轴说明
    ax.set_xlabel(column)
    #设置图y轴的说明
    ax.set_ylabel('Frequency')
    #保存图片,一定是先保存
    plt.savefig('c:\\Users\\dell\\Desktop\\my_project\\'+column+'_'+type+'.png')
    #图片显示
    plt.draw()
    #图片停顿时间,秒为单位
    plt.pause(2)
    #关闭图片,如果不关闭,则需要手动关闭,才能使遍历继续进行
    plt.close()
if __name__ == '__main__':
    for i in ['A1','A2','A3','B1','B2','B3','B4','B5']:
        df=open(i)
        hist_plt('a',i)
        hist_plt('b',i)
        hist_plt('c',i)
        hist_plt('d',i)
        hist_plt('e',i)
        #'a','b'....是打开列表df的列名

这样就可以在较短的时间绘制40张图片,谢谢阅读

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr Pydaty

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值