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模拟登陆Tom邮箱示例分享
Jan 13 Python
Python中的推导式使用详解
Jun 03 Python
Saltstack快速入门简单汇总
Mar 01 Python
python 按照固定长度分割字符串的方法小结
Apr 30 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
Jun 09 Python
python图像和办公文档处理总结
May 28 Python
利用rest framework搭建Django API过程解析
Aug 31 Python
Python shutil模块用法实例分析
Oct 02 Python
python 实现提取log文件中的关键句子,并进行统计分析
Dec 24 Python
django 读取图片到页面实例
Mar 27 Python
如何通过安装HomeBrew来安装Python3
Dec 23 Python
Python OpenCV超详细讲解基本功能
Apr 02 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
PHP 文件上传全攻略
2010/04/28 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
2014/10/27 PHP
php通过array_shift()函数移除数组第一个元素的方法
2015/03/18 PHP
PHP会话操作之cookie用法分析
2016/09/28 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
2021/03/09 PHP
JavaScript中令你抓狂的魔术变量
2006/11/30 Javascript
jquery 插件之仿“卓越亚马逊”首页弹出菜单效果
2008/12/25 Javascript
Javascript valueOf 使用方法
2008/12/28 Javascript
js 判断上传文件大小及格式代码
2013/11/13 Javascript
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
javascript打开word文档的方法
2014/04/16 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
[原创]jquery判断元素内容是否为空的方法
2018/05/04 jQuery
JS中使用new Option()实现时间联动效果
2018/12/10 Javascript
为vue项目自动设置请求状态的配置方法
2019/06/09 Javascript
[00:58]PWL开团时刻DAY5——十人开雾0换5
2020/11/04 DOTA
一篇不错的Python入门教程
2007/02/08 Python
python判断给定的字符串是否是有效日期的方法
2015/05/13 Python
Python实现复杂对象转JSON的方法示例
2017/06/22 Python
Python实现简单的获取图片爬虫功能示例
2017/07/12 Python
详解django.contirb.auth-认证
2018/07/16 Python
python2和python3在处理字符串上的区别详解
2019/05/29 Python
python程序快速缩进多行代码方法总结
2019/06/23 Python
Flask框架学习笔记之表单基础介绍与表单提交方式
2019/08/12 Python
python GUI库图形界面开发之PyQt5信号与槽基本操作
2020/02/25 Python
Python参数传递实现过程及原理详解
2020/05/14 Python
HTML5拖放API实现拖放排序的实例代码
2017/05/11 HTML / CSS
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
11月红领巾广播稿
2014/01/17 职场文书
土地转让协议书
2014/04/15 职场文书
同学聚会通知书
2015/04/20 职场文书
给老师的保证书怎么写
2015/05/09 职场文书
升学宴学生致辞
2015/09/29 职场文书
会计入职心得体会
2016/01/22 职场文书
导游词幽默开场白
2019/06/26 职场文书
Oracle创建只读账号的详细步骤
2021/06/07 Oracle