详解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 基础学习第二弹 类属性和实例属性
Aug 27 Python
python实现的udp协议Server和Client代码实例
Jun 04 Python
Python编程语言的35个与众不同之处(语言特征和使用技巧)
Jul 07 Python
把项目从Python2.x移植到Python3.x的经验总结
Apr 20 Python
Python实现截屏的函数
Jul 26 Python
Python基于Socket实现的简单聊天程序示例
Aug 05 Python
python numpy和list查询其中某个数的个数及定位方法
Jun 27 Python
python 异或加密字符串的实例
Oct 14 Python
python连接PostgreSQL数据库的过程详解
Sep 18 Python
python实现图片插入文字
Nov 26 Python
Python 如何创建一个简单的REST接口
Jul 30 Python
Python实现滑雪小游戏
Sep 25 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分多步骤填写发布信息的简单方法实例代码
2012/09/23 PHP
PHP实现多进程并行操作的详解(可做守护进程)
2013/06/18 PHP
php Imagick获取图片RGB颜色值
2014/07/28 PHP
php中Redis的应用--消息传递
2017/03/28 PHP
为何说PHP引用是个坑,要慎用
2018/04/02 PHP
JQuery 技巧和窍门整理(8个)
2010/04/22 Javascript
js实现图片轮换效果代码
2013/04/16 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
jquery制作漂亮的弹出层提示消息特效
2014/12/23 Javascript
jQuery实现冻结表头的方法
2015/03/09 Javascript
实现前后端数据交互方法汇总
2015/04/07 Javascript
jQuery+PHP+Mysql实现抽奖程序
2020/04/12 jQuery
jQuery实现上传图片前预览效果功能
2017/08/03 jQuery
JavaScript判断浏览器版本的方法
2019/11/03 Javascript
Vue项目接入Paypal实现示例详解
2020/06/04 Javascript
简单了解three.js 着色器材质
2020/08/03 Javascript
[42:32]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第二场 11.27
2020/12/01 DOTA
在Python中操作字典之setdefault()方法的使用
2015/05/21 Python
Python脚本实现自动发带图的微博
2016/04/27 Python
PyCharm更改字体和界面样式的方法步骤
2019/09/27 Python
基于Python实现体育彩票选号器功能代码实例
2020/09/16 Python
HTML5 解析规则分析
2009/08/14 HTML / CSS
html5 canvas绘制网络字体的常用方法
2019/08/26 HTML / CSS
马来西亚网上花店:FlowerAdvisor马来西亚
2020/01/03 全球购物
普天C++笔试题
2016/03/20 面试题
什么是.net
2015/08/03 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
高校毕业生登记表自我鉴定
2013/11/03 职场文书
走群众路线学习心得体会
2014/10/31 职场文书
复兴之路纪录片观后感
2015/06/02 职场文书
单位收入证明范本
2015/06/18 职场文书
2015暑期社会实践个人总结
2015/07/13 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
python基于tkinter制作无损音乐下载工具
2021/03/29 Python
Python实现拼音转换
2021/06/07 Python
Elasticsearch 索引操作和增删改查
2022/04/19 Python