Python绘图之详解matplotlib

 更新时间:2021年07月31日 08:32:55   作者:金融矿工  
这篇文章主要介绍了Python绘图之详解matplotlib,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下

一、matplotlib介绍

matplotlib是python从matlab继承的绘图库,可以满足大部分的日常使用,是目前最流行的底层绘图库。

二、matplotlib的使用

(一)导入模块【中文显示】

显示中文方面mac和windows根据自己电脑系统选一个即可

import matplotlib.pyplot as plt
# 显示中文(mac)
from matplotlib.font_manager import FontManager
fm = FontManager()
mat_fonts = set(f.name for f in fm.ttflist)
print(mat_fonts)
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
#显示中文(windows)
from pylab import mpl
#以黑体显示中文
mpl.rcParams['font.sans-serif']=[SimHei]
#解决保存图像是负号 显示为方块的问题
mpl.rcParams['axes.unicode_minus']=False
# 导入numpy 方便下面绘图展示
import numpy as np


(二)画布与画板,简单绘图

和现实世界绘图一样,在matplotlib里绘图我们也需定义画布和画板,其中一个画布里可以存在多个画板。在绘图时首先要指明在哪个画板上绘图。

# 建立一张画布 其中包括2行三列六张画板
fig,axes=plt.subplots(nrows=2,ncols=3,figsize=(20,8))
# data x为测试数据 
np.random.seed(100)
data=np.random.randn(50)
x=np.arange(50)
# 在第一个子图上做折线图
axes[0,0].plot(x,data,linestyle='-',color='b',marker='o')
# 在第二个子图上做直方图
axes[0,1].hist(data,bins=20,facecolor='c')
# 在第三个子图上做垂直条形图同时加上折线
axes[0,2].bar(x,data)
axes[0,2].plot(x,data,linestyle='-.',color='r')
# 在第四个子图上做水平条形图
axes[1,0].barh(x,data)
# 在第五个子图上做饼图 explode为突出显示的部分
explode=[x*0 for x in range(50)]
explode[40]=0.1
axes[1,1].pie(data,explode=explode)
# 在第六个子图上做散点图 explode为突出显示的部分
axes[1,2].scatter(x,data,c='r',marker='o')
plt.show()

在这里插入图片描述

(三)添加图片信息

import matplotlib.pyplot as plt
# 显示中文【mac】
from matplotlib.font_manager import FontManager
fm = FontManager()
mat_fonts = set(f.name for f in fm.ttflist)
print(mat_fonts)
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
#设置所需数据
age = range(11, 31)
jack = [1, 0, 1, 1, 2, 4, 3, 2, 3, 4, 4, 5, 6, 5, 4, 3, 3, 1, 1, 1]
tom = [1, 0, 3, 1, 2, 2, 3, 3, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1]
# dpi为设置像素大小
fig = plt.figure(figsize=(20, 8), dpi=80)
# jack与tom11到30交友记录
plt.plot(age, jack, 'r', label='jack', linestyle='-', linewidth=5, marker='o')
plt.plot(age, tom, 'g', label='tom', linestyle='-.', linewidth=5, marker='*')
# 设置x轴数据刻度
plt.xticks(age)
# 设置x轴数据标签
plt.xlabel("age", fontsize=20)
# 设置y轴数据标签
plt.ylabel("numbers", fontsize=20)
# 设置图表标题
plt.title("friends made from 11 to 30", fontsize=20)
# 设置网格线
plt.grid()
# 设置图例位置
plt.legend(loc=0)
# 添加水印
plt.text(30, 2, "交友记录", fontsize=200, color='black', ha='right', va='bottom', alpha=0.1)
# 添加数据标签
plt.text(23, 6, 'max num', fontsize=20, color='b', verticalalignment='center')
#将图保存到当前目录 命名为test.png
plt.savefig('test.png')
plt.show()

在这里插入图片描述

到此这篇关于Python绘图之详解matplotlib的文章就介绍到这了,更多相关python绘图之matplotlib内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C++从汇编的视角审视对象的创建问题

    C++从汇编的视角审视对象的创建问题

    这篇文章主要介绍了C++从汇编的视角看对象的创建,从汇编的视角来看,调用构造器和调用 “返回对象” 的函数是一样的,从汇编的角度来看,对象就是一堆数据的排列,比如说最普通的对象就是数据成员按照声明顺序直接排列,需要的朋友可以参考下
    2022-01-01
  • C语言 const修饰普通变量和指针的操作代码

    C语言 const修饰普通变量和指针的操作代码

    这篇文章主要介绍了C语言const修饰普通变量和指针,用const修饰普通变量时,是在语法层面限制了变量的修改,但是本质上,变量还是变量,是一种不能被修改的变量,本文通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • 关于C++类的成员初始化列表的相关问题

    关于C++类的成员初始化列表的相关问题

    下面小编就为大家带来一篇关于C++类的成员初始化列表的相关问题。小编觉得挺
    2016-05-05
  • Qt音视频功能实现方法详解

    Qt音视频功能实现方法详解

    音视频应用往往需要大量的计算资源,尤其是在处理高分辨率、高码率的音视频数据时,这篇文章主要给大家介绍了关于Qt音视频功能实现方法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-09-09
  • C++中std::partial_sort的使用小结

    C++中std::partial_sort的使用小结

    std::partial_sort 是 C++ 标准库中的一个算法,它可以对容器中的一部分元素进行排序,本文主要介绍了C++中std::partial_sort的使用小结,感兴趣的可以了解一下
    2025-04-04
  • C++实现假装蓝屏整蛊小程序

    C++实现假装蓝屏整蛊小程序

    因为工作的需要,有时候我们离开时并不想让别人看到我们电脑的内容,所以本文为大家分享了一个基于C++实现的假装蓝屏的小程序,需要的可以参考下
    2023-06-06
  • C++中的const和constexpr详解

    C++中的const和constexpr详解

    C++ const 和 constexpr 的区别呢,constexpr表示这玩意儿在编译期就可以算出来(前提是为了算出它所依赖的东西也是在编译期可以算出来的)。而const只保证了运行时不直接被修改(但这个东西仍然可能是个动态变量)。下面我们来详细讲解下。
    2016-01-01
  • C语言基于考研的栈和队列

    C语言基于考研的栈和队列

    这篇文章主要介绍了考研时的C语言中的堆栈和队列的相关资料,需要的朋友可以参考下,小编觉得这篇文章写的很好,希望能给你带来帮助
    2021-08-08
  • C++ 左值引用与一级指针示例详解

    C++ 左值引用与一级指针示例详解

    这篇文章主要介绍了C++ 左值引用与一级指针,本文给大家介绍了C++ (左值)引用和指针简介,结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09
  • c++ STL库容器之集合set代码实例

    c++ STL库容器之集合set代码实例

    在本篇文章里小编给大家整理的是关于c++STL库容器之集合set代码实例,需要的朋友们可以参考下。
    2020-03-03

最新评论