详解Matplotlib绘图之属性设置


Posted in Python onAugust 23, 2019

关于Python数据分析在数学建模中的更多相关应用:Python数据分析在数学建模中的应用汇总(持续更新中!)

(1)、导入库

import matplotlib.pyplot as plt
import numpy

(2)、figure对象和subplot简单运用

#figure对象
fig = plt.figure()   #figure是图象对象

ax1 = fig.add_subplot(2,2,1)  #创建一个2*2的子图,放在第一个位置
ax2 = fig.add_subplot(2,2,2)  #创建一个2*2的子图,放在第二个位置
ax3 = fig.add_subplot(2,2,3)  #创建一个2*2的子图,放在第三个位置

from numpy.random import randn
plt.plot(randn(50).cumsum(),'k--')  #'k--'告诉python要画出黑色的虚线
ax1.hist(randn(100),bins=20,color='k',alpha=0.3)

详解Matplotlib绘图之属性设置

(3)、调整subplot周围的间距

#调整subplot周围的间距
fig,axes = plt.subplots(2,2,sharex=True,sharey=True)  #直接生成fiure对象和Axes实例(数组)
for i in range(2):
  for j in range(2):
    axes[i, j ].hist(numpy.random.randn(500),bins = 50,color='k',alpha=0.5)   #遍历创建图
plt.subplots_adjust(left=None,bottom=None,right=None,top=None,wspace=0,hspace=0)  #用于调整subplot周围的间距

详解Matplotlib绘图之属性设置

(4)、颜色、标记和线型

#颜色、标记和线型
plt.figure()
##linestyle设置线型,color设置颜色,marker设置设置连接点
plt.plot(numpy.random.randn(30).cumsum(),linestyle='--',color='g',marker='o')

详解Matplotlib绘图之属性设置

(5)、设置标题、轴标签,刻度以及刻度标签

#设置标题、轴标签,刻度以及刻度标签
fig = plt.figure()   #创建figure对象
ax = fig.add_subplot(1,1,1)   #获得Axes对象
ax.plot(numpy.random.randn(1000).cumsum()) #生成随机数
ax.set_xticks([0,250,500,750,1000])   #设置x轴刻度
ax.set_yticks([-20,-10,0,10,20])    #设置y轴刻度
ax.set_title('My first matplotlib plot')  #设置标题
ax.set_xlabel('Xtages')   #设置x轴标签
ax.set_ylabel('Ytages')   #设置y轴标签

详解Matplotlib绘图之属性设置

(6)、添加图例

#添加图例
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot(numpy.random.randn(1000).cumsum(),'k',label='one') #label标签用于添加图例
ax.plot(numpy.random.randn(1000).cumsum(),'k',label='two')
ax.plot(numpy.random.randn(1000).cumsum(),'k',label='three')

ax.legend(loc='best')    #loc选项可以选择图例的位置

详解Matplotlib绘图之属性设置

(7)、添加注释

#添加注释
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot(numpy.random.randn(1000).cumsum(),'k',label='one') #label标签用于添加图例
plt.annotate("Important value", (55,20), xycoords='data',  #添加注释的方法
     xytext=(5, 38),
     arrowprops=dict(arrowstyle='->'))

详解Matplotlib绘图之属性设置

(8)、绘制常用图形

#绘制常用图形
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
rect = plt.Rectangle((0.2,0.75),0.4,0.15,color='k',alpha=0.3)  #长方形
circ = plt.Circle((0.7,0.2),0.15,color='b',alpha=0.3)      #椭圆形

ax.add_patch(rect)   #添加到图版中
ax.add_patch(circ)

详解Matplotlib绘图之属性设置

(9)、图表的导出

#图表的保存
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
rect = plt.Rectangle((0.2,0.75),0.4,0.15,color='k',alpha=0.3)  #长方形
ax.add_patch(rect)   #添加到图版中
fig.savefig('figpath.png',dpi = 400,bbox_inches='tight') #dpi可以控制图象的分辨率,bbox_inches可以剪除图表的空白部分

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python入门篇之面向对象
Oct 20 Python
Python标准库之Sys模块使用详解
May 23 Python
python在不同层级目录import模块的方法
Jan 31 Python
python验证码识别的实例详解
Sep 09 Python
python3实现全角和半角字符转换的方法示例
Sep 21 Python
几行Python代码爬取3000+上市公司的信息
Jan 24 Python
快速排序的四种python实现(推荐)
Apr 03 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
Jun 19 Python
树莓派3 搭建 django 服务器的实例
Aug 29 Python
python模拟预测一下新型冠状病毒肺炎的数据
Feb 01 Python
python手机号前7位归属地爬虫代码实例
Mar 31 Python
django queryset相加和筛选教程
May 18 Python
python3.6生成器yield用法实例分析
Aug 23 #Python
python基础 range的用法解析
Aug 23 #Python
Django 导出项目依赖库到 requirements.txt过程解析
Aug 23 #Python
Django接收自定义http header过程详解
Aug 23 #Python
Python 处理文件的几种方式
Aug 23 #Python
python 数据生成excel导出(xlwt,wlsxwrite)代码实例
Aug 23 #Python
python @classmethod 的使用场合详解
Aug 23 #Python
You might like
PHP中for循环语句的几种变型
2007/03/16 PHP
php 多关键字 高亮显示实现代码
2012/04/23 PHP
php中删除字符串中最先出现某个字符的实现代码
2013/02/03 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
2017/06/22 PHP
php判断/计算闰年的方法小结【三种方法】
2019/07/06 PHP
laravel-admin自动生成模块,及相关基础配置方法
2019/10/08 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
2019/10/24 PHP
javascript下IE与FF兼容函数收集
2008/09/17 Javascript
Javascript图像处理思路及实现代码
2012/12/25 Javascript
js类定义函数时用prototype与不用的区别示例介绍
2014/06/10 Javascript
深入理解javascript中的立即执行函数(function(){…})()
2014/06/12 Javascript
javascript图片滑动效果实现
2021/01/28 Javascript
Bootstrap每天必学之按钮
2015/11/26 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
jquery attr()设置和获取属性值实例教程
2016/09/25 Javascript
Angular.js中处理页面闪烁的方法详解
2017/03/09 Javascript
对vue.js中this.$emit的深入理解
2018/02/23 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
countUp.js实现数字滚动效果
2019/10/18 Javascript
JS实现打字游戏
2019/12/17 Javascript
JavaScript实现简单验证码
2020/08/24 Javascript
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
利用Python中的pandas库对cdn日志进行分析详解
2017/03/07 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
2019/03/30 Python
Python统计一个字符串中每个字符出现了多少次的方法【字符串转换为列表再统计】
2019/05/05 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
2019/08/09 Python
HTML5中canvas中的beginPath()和closePath()的重要性
2018/08/24 HTML / CSS
澳大利亚珠宝商:Shiels
2019/10/06 全球购物
最新的大学生找工作自我评价
2013/09/29 职场文书
优秀通讯员事迹材料
2014/01/28 职场文书
寄语是什么意思
2014/04/10 职场文书
2014年教研室工作总结
2014/12/06 职场文书
生日宴会家属答谢词
2015/09/29 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
理解深度学习之深度学习简介
2021/04/14 Python
详解CSS不受控制的position fixed
2021/05/25 HTML / CSS