matplotlib绘制符合论文要求的图片实例(必看篇)


Posted in Python onJune 02, 2017

最近需要将实验数据画图出来,由于使用python进行实验,自然使用到了matplotlib来作图。

下面的代码可以作为画图的模板代码,代码中有详细注释,可根据需要进行更改。

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['Arial']  #如果要显示中文字体,则在此处设为:SimHei
plt.rcParams['axes.unicode_minus']=False  #显示负号

x = np.array([3,5,7,9,11,13,15,17,19,21])
A = np.array([0.9708, 0.6429, 1, 0.8333, 0.8841, 0.5867, 0.9352, 0.8000, 0.9359, 0.9405])
B= np.array([0.9708, 0.6558, 1, 0.8095, 0.8913, 0.5950, 0.9352, 0.8000, 0.9359, 0.9419])
C=np.array([0.9657, 0.6688, 0.9855, 0.7881, 0.8667, 0.5952, 0.9361, 0.7848, 0.9244, 0.9221])
D=np.array([0.9664, 0.6701, 0.9884, 0.7929, 0.8790, 0.6072, 0.9352, 0.7920, 0.9170, 0.9254])

#label在图示(legend)中显示。若为数学公式,则最好在字符串前后添加"$"符号
#color:b:blue、g:green、r:red、c:cyan、m:magenta、y:yellow、k:black、w:white、、、
#线型:-  --   -.  :    , 
#marker:.  ,   o   v    <    *    +    1
plt.figure(figsize=(10,5))
plt.grid(linestyle = "--")      #设置背景网格线为虚线
ax = plt.gca()
ax.spines['top'].set_visible(False)  #去掉上边框
ax.spines['right'].set_visible(False) #去掉右边框

plt.plot(x,A,color="black",label="A algorithm",linewidth=1.5)
plt.plot(x,B,"k--",label="B algorithm",linewidth=1.5)
plt.plot(x,C,color="red",label="C algorithm",linewidth=1.5)
plt.plot(x,D,"r--",label="D algorithm",linewidth=1.5)

group_labels=['dataset1','dataset2','dataset3','dataset4','dataset5',' dataset6','dataset7','dataset8','dataset9','dataset10'] #x轴刻度的标识
plt.xticks(x,group_labels,fontsize=12,fontweight='bold') #默认字体大小为10
plt.yticks(fontsize=12,fontweight='bold')
plt.title("example",fontsize=12,fontweight='bold')    #默认字体大小为12
plt.xlabel("Data sets",fontsize=13,fontweight='bold')
plt.ylabel("Accuracy",fontsize=13,fontweight='bold')
plt.xlim(3,21)         #设置x轴的范围
#plt.ylim(0.5,1)

#plt.legend()          #显示各曲线的图例
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12,fontweight='bold') #设置图例字体的大小和粗细

plt.savefig('D:\\filename.svg',format='svg')  #建议保存为svg格式,再用inkscape转为矢量图emf后插入word中
plt.show()

下面是上面代码绘制的图例:

matplotlib绘制符合论文要求的图片实例(必看篇)

建议保存图片的格式svg(因为matplotlib存为eps矢量图时候会有问题),然后使用inkscape软件将svg格式转为emf矢量图格式。如果svg图片很多,可以在windows下使用批处理(安装inkscape软件后要记得设置path路径),下面这段代码能将它所在目录下的svg文件转为emf文件。将下面代码复制到文本文件,改后缀名为bat。

@echo off
 for %%i in (*.svg) do (
   echo %%i
   inkscape -f %%i -M %%~ni.emf
 )
 @echo Finished

以上这篇matplotlib绘制符合论文要求的图片实例(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3中的2to3转换工具使用示例
Jun 12 Python
举例讲解Python面向对象编程中类的继承
Jun 17 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
Sep 24 Python
python表格存取的方法
Mar 07 Python
Python 脚本获取ES 存储容量的实例
Dec 27 Python
Python获取统计自己的qq群成员信息的方法
Nov 15 Python
python pygame实现挡板弹球游戏
Nov 25 Python
python 通过手机号识别出对应的微信性别(实例代码)
Dec 22 Python
Python reduce函数作用及实例解析
May 08 Python
TensorFlow中如何确定张量的形状实例
Jun 23 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
Nov 27 Python
使用Python下载抖音各大V视频的思路详解
Feb 06 Python
Python 爬虫图片简单实现
Jun 01 #Python
Python 通过URL打开图片实例详解
Jun 01 #Python
git使用.gitignore设置不生效或不起作用问题的解决方法
Jun 01 #Python
python 内置函数filter
Jun 01 #Python
python读取二进制mnist实例详解
May 31 #Python
Python算术运算符实例详解
May 31 #Python
Python简单的制作图片验证码实例
May 31 #Python
You might like
解析php中static,const与define的使用区别
2013/06/18 PHP
PHP文件读写操作相关函数总结
2014/11/18 PHP
PHP写API输出的时用echo的原因详解
2019/04/28 PHP
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
JavaScript定时显示广告代码分享
2015/03/02 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
2015/05/14 Javascript
全面详细的jQuery常见开发技巧手册
2016/02/21 Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
2017/05/02 Javascript
vue时间格式化实例代码
2017/06/13 Javascript
jquery动态赋值id与动态取id方法示例
2017/08/21 jQuery
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
JavaScript图片处理与合成总结
2018/03/04 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
javascript中如何判断类型汇总
2019/05/14 Javascript
Vite和Vue CLI的优劣
2021/01/30 Vue.js
[01:32]2016国际邀请赛中国区预选赛CDEC战队教练采访
2016/06/26 DOTA
[48:12]Secret vs Optic Supermajor 胜者组 BO3 第三场 6.4
2018/06/05 DOTA
wxpython 最小化到托盘与欢迎图片的实现方法
2014/06/09 Python
Python使用django搭建web开发环境
2017/06/09 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
Python实现的密码强度检测器示例
2017/08/23 Python
python 动态加载的实现方法
2017/12/22 Python
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
Flask实现跨域请求的处理方法
2018/09/27 Python
对Python通过pypyodbc访问Access数据库的方法详解
2018/10/27 Python
Python设计模式之桥接模式原理与用法实例分析
2019/01/10 Python
pytorch点乘与叉乘示例讲解
2019/12/27 Python
python实现从尾到头打印单链表操作示例
2020/02/22 Python
python中np是做什么的
2020/07/21 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
2020/08/19 Python
详解Python爬虫爬取博客园问题列表所有的问题
2021/01/18 Python
戴尔英国翻新电脑和电子产品:Dell UK Refurbished Computers
2019/07/30 全球购物
学习群众路线的心得体会
2014/11/05 职场文书
教师节感谢信
2015/01/22 职场文书
管理失职检讨书范文
2015/05/05 职场文书
描写九月优美句子(39条)
2019/09/11 职场文书