Python Matplotlib库实现画局部图


Posted in Python onNovember 17, 2021

在画图中,我们需要放大图像的某一部分,看清其变化。最近在写论文时,就遇到了这个问题,还有坐标轴加粗、控制线型和大小等要求。这些,都可以通过Python Matplotlib库实现。具体看下面的代码:

import matplotlib.pyplot as plt

init_np = np.array(x0_list)
xopt_net_np = np.array(xopt_net)

plt.figure(figsize=(8,5))
plt.subplot(311)
ax = plt.gca() # 获取坐标轴
bwith = 1.2
ax.spines['bottom'].set_linewidth(bwith)
ax.spines['left'].set_linewidth(bwith)
ax.spines['top'].set_linewidth(bwith)
ax.spines['right'].set_linewidth(bwith)
plt.yticks([])
plt.xlim([-21,21])
plt.plot(init_np, np.zeros_like(init_np), '.b', markersize=2, label='initial value Distri.')
plt.legend()

plt.subplot(312)
ax = plt.gca()
bwith = 1.2
ax.spines['bottom'].set_linewidth(bwith)
ax.spines['left'].set_linewidth(bwith)
ax.spines['top'].set_linewidth(bwith)
ax.spines['right'].set_linewidth(bwith)
plt.yticks([])
plt.xlabel('x')
plt.plot(xopt_gd, np.zeros_like(xopt_gd), '.r', markersize=2, label='optimal value Distri. by GD')
plt.xlim([-21,21])
plt.legend()

plt.subplot(313)
ax = plt.gca()
bwith = 1.2
ax.spines['bottom'].set_linewidth(bwith)
ax.spines['left'].set_linewidth(bwith)
ax.spines['top'].set_linewidth(bwith)
ax.spines['right'].set_linewidth(bwith)
plt.yticks([])
plt.plot(xopt_net_np, np.zeros_like(xopt_net_np), '.r', markersize=2, label='optimal value Distri. by Network')
plt.xlim([-21,21])
plt.legend()

plt.axes([0.125,0.275,0.25,0.07])   # list:[左下角水平坐标, 左下角垂直坐标, 宽度, 高度]
# plt.xticks(())
plt.yticks(())
plt.plot(xopt_net_np, np.zeros_like(xopt_net_np), '.r', markersize=1, label='optimal value Distr.')
plt.savefig('sol_scipy_ai.png', dpi=400, bbox_inches='tight')
plt.show()

得到了下面的效果:

Python Matplotlib库实现画局部图

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

Python 相关文章推荐
python uuid模块使用实例
Apr 08 Python
python将ansible配置转为json格式实例代码
May 15 Python
Python request设置HTTPS代理代码解析
Feb 12 Python
python如何实现int函数的方法示例
Feb 19 Python
Python动态赋值的陷阱知识点总结
Mar 17 Python
python简单验证码识别的实现方法
May 10 Python
简单了解python变量的作用域
Jul 30 Python
django-初始配置(纯手写)详解
Jul 30 Python
详解用Python为直方图绘制拟合曲线的两种方法
Aug 21 Python
基于python进行抽样分布描述及实践详解
Sep 02 Python
Python同时迭代多个序列的方法
Jul 28 Python
对Keras自带Loss Function的深入研究
May 25 Python
python实现局部图像放大
Pygame Draw绘图函数的具体使用
Pygame Rect区域位置的使用(图文)
Nov 17 #Python
分析Python list操作为什么会错误
Nov 17 #Python
深入理解Pytorch微调torchvision模型
Nov 11 #Python
Python 中 Shutil 模块详情
Nov 11 #Python
django 认证类配置实现
Nov 11 #Python
You might like
如何开发一个虚拟域名系统
2006/10/09 PHP
php之XML转数组函数的详解
2013/06/07 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
2017/04/03 PHP
Yii2设置默认控制器的两种方法
2017/05/19 PHP
Laravel 对某一列进行筛选然后求和sum()的例子
2019/10/10 PHP
获取Javscript执行函数名称的方法
2006/12/22 Javascript
JavaScript 浏览器验证代码(来自discuz)
2010/07/17 Javascript
Three.js源码阅读笔记(基础的核心Core对象)
2012/12/27 Javascript
点击显示指定元素隐藏其他同辈元素的方法
2014/02/19 Javascript
jquery.mobile 共同布局遇到的问题小结
2015/02/10 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
Bootstrap jquery.twbsPagination.js动态页码分页实例代码
2017/02/20 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
[47:04]LGD vs infamous Supermajor小组赛D组 BO3 第二场 6.3
2018/06/04 DOTA
Python装饰器(decorator)定义与用法详解
2018/02/09 Python
python 编写简单网页服务器的实例
2018/06/01 Python
Python3使用Matplotlib 绘制精美的数学函数图形
2019/04/11 Python
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
2019/07/15 Python
Python 迭代,for...in遍历,迭代原理与应用示例
2019/10/12 Python
Python基础之高级变量类型实例详解
2020/01/03 Python
python实现简单飞行棋
2020/02/06 Python
详解python日志输出使用配置文件格式
2021/02/10 Python
高中生校园生活自我评价
2013/09/19 职场文书
商务英语求职自荐信范文
2013/12/24 职场文书
《落花生》教学反思
2014/02/25 职场文书
《棉鞋里的阳光》教学反思
2014/04/24 职场文书
2014年保安个人工作总结
2014/11/13 职场文书
预备党员半年考察意见
2015/06/01 职场文书
汽车车尾标语大全
2015/08/11 职场文书
党员干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
详解python中[-1]、[:-1]、[::-1]、[n::-1]使用方法
2021/04/25 Python
Vue实现动态查询规则生成组件
2021/05/27 Vue.js
Python借助with语句实现代码段只执行有限次
2022/03/23 Python
《帝国时代4》赛季预告 新增内容编译器可创造地图
2022/04/03 其他游戏
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS