详解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简单删除目录下文件以及文件夹的方法
May 27 Python
Python中二维列表如何获取子区域元素的组成
Jan 19 Python
python3实现抓取网页资源的 N 种方法
May 02 Python
python实现识别手写数字 python图像识别算法
Mar 23 Python
pandas按若干个列的组合条件筛选数据的方法
Apr 11 Python
Python生成短uuid的方法实例详解
May 29 Python
Python使用matplotlib和pandas实现的画图操作【经典示例】
Jun 13 Python
java中的控制结构(if,循环)详解
Jun 26 Python
Python 实例方法、类方法、静态方法的区别与作用
Aug 14 Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
Sep 01 Python
用Python爬虫破解滑动验证码的案例解析
May 06 Python
浅谈pytorch中stack和cat的及to_tensor的坑
May 20 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 巧用数组降低程序的时间复杂度
2010/01/01 PHP
php empty() 检查一个变量是否为空
2011/11/10 PHP
php文件操作实例代码
2012/05/10 PHP
PHP HTML JavaScript MySQL代码如何互相传值的方法分享
2012/09/30 PHP
php中防止恶意刷新页面的代码小结
2012/10/31 PHP
php添加文章时生成静态HTML文章的实现代码
2013/02/17 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
2013/07/02 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
2016/06/13 PHP
基于thinkPHP框架实现留言板的方法
2016/10/17 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
当鼠标移动时出现特效的JQuery代码
2013/11/08 Javascript
随鼠标移动的时钟非常漂亮遗憾的是只支持IE
2014/08/12 Javascript
jQuery中toggle()函数的使用实例
2015/04/17 Javascript
js组件SlotMachine实现图片切换效果制作抽奖系统
2016/04/17 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
jQuery Mobile和HTML5开发App推广注册页
2016/11/07 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
JS实现的新闻列表自动滚动效果示例
2019/01/30 Javascript
Vue中实现权限控制的方法示例
2019/06/07 Javascript
js实现选项卡效果
2020/03/07 Javascript
vuex存取值和映射函数使用说明
2020/07/24 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
2020/12/10 Vue.js
python paramiko实现ssh远程访问的方法
2013/12/03 Python
python实现批量改文件名称的方法
2015/05/25 Python
python分布式环境下的限流器的示例
2017/10/26 Python
Python 类的特殊成员解析
2018/06/20 Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
2019/09/06 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
一款纯css3实现的响应式导航
2014/10/31 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
智能电子秤、手表和健康监测仪:Withings(之前为诺基亚健康)
2018/10/30 全球购物
校园环保广播稿(3篇)
2014/09/15 职场文书
采购员工作总结范文
2015/08/12 职场文书
Vue和Flask通信的实现
2021/05/19 Vue.js
使用jpa之动态插入与修改(重写save)
2021/11/23 Java/Android