使用matplotlib 画图

一个图里面画多个图

# -*- coding: utf-8 -*-

"""
画图
"""
import os
import matplotlib.pyplot as plt


def draw_img(data):
    """
    画图,可以画单个图,多个图,
    :param data:
    {
    'rss(M)': {'new': [1,2,3], 'old': [2,3,4]},
    'vsz(M)': {'new': [1,2,3], 'old': [2,3,4]},
    'cpu(%)': {'new': [1,2,3], 'old': [2,3,4]}
    }
    :return:
    """
    plt.figure(figsize=(30, 20))

    pic_num = len(data)
    pic_index = 0
    for k, v in data.items():
        pic_index += 1
        pic_position = pic_num * 100 + 10 + pic_index
        tmp_pic = plt.subplot(pic_position)
        plt.sca(tmp_pic)
        plt.grid(ls='--')
        plt.xlabel("time(s)")
        plt.ylabel(k)
        legend = []
        for k1, v1 in v.items():
            plt.plot(range(1, len(v1) + 1), v1, label=k1, linewidth=1)
            plt.ylim([0, max(v1) * 1.01])
            legend.append(k1)
        plt.legend(legend, loc=0)
    pic_path = os.getcwd() + '/perf.png'
    plt.savefig(pic_path, bbox_inches='tight')


draw_img({
    'rss(M)': {'new': [1,2,3], 'old': [2,3,4]},
    'vsz(M)': {'new': [1,2,3], 'old': [2,3,4]},
    'cpu(%)': {'new': [1,2,3], 'old': [2,3,4]}
    })

效果:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值