Python 实现绘制子图及子图刻度的变换等问题


Posted in Python onMay 31, 2021

1、涉及到图的对比会用到子图形式展示,先看看效果

Python 实现绘制子图及子图刻度的变换等问题

2、绘制代码如下

accuracy_alexnet_clef = [78.05, 78.43, 78.65, 78.61, 78.69]
accuracy_resnet_clef  = [84.56, 84.84, 85.07, 85.01, 85.13]
accuracy_alexnet_office10 = [87.30, 87.57, 87.78, 87.72, 87.50]
accuracy_resnet_office10  = [96.31, 96.35, 96.62, 96.43, 96.15]
orders = ['2', '3', '5', '10', '20']
names = ['alexnet', 'resnet']
# 创建两幅子图
f, ax = plt.subplots(2,1,figsize=(6, 8))
# 第一根柱子偏移坐标
x = [i for i in range(len(orders))]
# 第二根柱子偏移坐标
x1 = [i + 0.35 for i in range(len(orders))]
# 两幅子图之间的间距
plt.subplots_adjust(wspace =0, hspace =0.4)
# 选择第一幅图
figure_1 = ax[0]
# 设置x轴偏移和标签
figure_1.set_xticks([i+0.15 for i in x])
figure_1.set_xticklabels(orders)
# 设置y轴的范围
figure_1.set_ylim(bottom=77,top=86)
# 绘制柱状图,x表示x轴内容,accuracy_alexnet_clef表示y轴的内容,alpha表示透明度,width表示柱子宽度
# label表示图列
figure_1.bar(x, accuracy_alexnet_clef, alpha=0.7, width = 0.35, facecolor = '#4c72b0', label='Alexnet')
figure_1.bar(x1, accuracy_resnet_clef, alpha=0.7, width = 0.35, facecolor = '#dd8452', label='Resnet')
figure_1.set_ylabel('Accuracy%') # 设置y轴的标签
figure_1.set_xlabel('Order') # 设置x轴的名称
figure_1.set_title('Alexnet') # 设置图一标题名称
figure_1.legend() # 显示图一的图例
# 选择第二幅图
figure_2 = ax[1]
figure_1.set_xticks([i+0.15 for i in x])
figure_1.set_xticklabels(orders)
figure_2.set_ylim(bottom=77,top=100)
figure_2.bar(x, accuracy_alexnet_office10,alpha=0.7,width = 0.35,facecolor = '#c44e52', label='Alexnet')
figure_2.bar(x1, accuracy_resnet_office10,alpha=0.7,width = 0.35,facecolor = '#5f9e6e', label='Alexnet')
# figure_2.bar(orders, accuracy_resnet_clef,alpha=0.7,width = 0.35,facecolor = '#dd8452')
figure_2.set_ylabel('Accuracy%')
figure_2.set_xlabel('Order')
figure_2.set_title('Resnet')
figure_2.legend()
f.suptitle('ImageCLEF_DA') # 设置总标题
plt.show()

补充:解决python中subplot绘制子图时子图坐标轴标签以及标题重叠的问题

1.问题描述

在使用python的matplotlib中的subplot绘制子图时出现信息相互重叠的情况。

Python 实现绘制子图及子图刻度的变换等问题

2.解决方案

在plt.show()前面添加代码plt.tight_layout()即可解决。

plt.subplot(211)
plt.figure(1)
plt.hist(x, 10)
plt.title("Histogram of sample points")
plt.subplot(212)
plt.plot(x,X.pdf(x))
plt.title("Probability Density Function(PDF)")
plt.tight_layout()
plt.show()

Python 实现绘制子图及子图刻度的变换等问题

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python获取网页上图片下载地址的方法
Mar 11 Python
Python基于pillow判断图片完整性的方法
Sep 18 Python
python使用str & repr转换字符串
Oct 13 Python
python实现将一个数组逆序输出的方法
Jun 25 Python
解决Django生产环境无法加载静态文件问题的解决
Apr 23 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
Aug 20 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
Jun 02 Python
Django返回HTML文件的实现方法
Sep 17 Python
Django中和时区相关的安全问题详解
Oct 12 Python
python爬虫beautifulsoup解析html方法
Dec 07 Python
python爬虫线程池案例详解(梨视频短视频爬取)
Feb 20 Python
Python开发之QT解决无边框界面拖动卡屏问题(附带源码)
May 27 Python
python 利用PyAutoGUI快速构建自动化操作脚本
pandas中DataFrame数据合并连接(merge、join、concat)
Pandas加速代码之避免使用for循环
pandas提升计算效率的一些方法汇总
May 30 #Python
Python一行代码实现自动发邮件功能
深入解析NumPy中的Broadcasting广播机制
python必学知识之文件操作(建议收藏)
You might like
oracle资料库函式库
2006/10/09 PHP
Blitz templates 最快的PHP模板引擎
2010/04/06 PHP
PHP目录函数实现创建、读取目录教程实例
2011/01/13 PHP
巧用php中的array_filter()函数去掉多维空值的代码分享
2012/09/07 PHP
php数组合并array_merge()函数使用注意事项
2014/06/19 PHP
PHP实现根据设备类型自动跳转相应页面的方法
2014/07/24 PHP
自编函数解决pathinfo()函数处理中文问题
2014/11/03 PHP
Laravel中使用阿里云OSS Composer包分享
2015/02/10 PHP
php将HTML表格每行每列转为数组实现采集表格数据的方法
2015/04/03 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
2015/09/25 PHP
PHP list() 将数组中的值赋给变量的简单实例
2016/06/13 PHP
thinkphp分页实现效果
2016/10/13 PHP
列表内容的选择
2006/06/30 Javascript
对YUI扩展的Gird组件 Part-1
2007/03/10 Javascript
jquery中插件实现自动添加用户的具体代码
2013/11/15 Javascript
用Jquery.load载入页面实现局部刷新
2014/01/22 Javascript
基于jquery实现的可编辑下拉框实现代码
2014/08/02 Javascript
详谈javascript异步编程
2016/02/21 Javascript
JavaScript语言精粹经典实例(整理篇)
2016/06/07 Javascript
详解用webpack2.0构建vue2.0超详细精简版
2017/04/05 Javascript
vue实现个人信息查看和密码修改功能
2018/05/06 Javascript
浅析VUE防抖与节流
2020/11/24 Vue.js
Python 爬虫多线程详解及实例代码
2016/10/08 Python
python3实现指定目录下文件sha256及文件大小统计
2019/02/25 Python
基于Python的微信机器人开发 微信登录和获取好友列表实现解析
2019/08/21 Python
基于python traceback实现异常的获取与处理
2019/12/13 Python
TensorFlow2.0矩阵与向量的加减乘实例
2020/02/07 Python
python thrift 实现 单端口多服务的过程
2020/06/08 Python
Keras在训练期间可视化训练误差和测试误差实例
2020/06/16 Python
多视角3D可旋转的HTML5 Logo动画
2016/03/02 HTML / CSS
英国皇家造币厂:The Royal Mint
2018/10/05 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
网上常见的一份Linux面试题(多项选择部分)
2015/02/07 面试题
2014年五一劳动节社区活动总结
2014/04/14 职场文书
宿舍卫生管理制度
2015/08/05 职场文书
2016年春季运动会广播稿
2015/08/19 职场文书