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 相关文章推荐
python算法表示概念扫盲教程
Apr 13 Python
python数据结构之列表和元组的详解
Sep 23 Python
python的socket编程入门
Jan 29 Python
python之super的使用小结
Aug 13 Python
Python实现压缩文件夹与解压缩zip文件的方法
Sep 01 Python
利用Python将文本中的中英文分离方法
Oct 31 Python
python 字符串只保留汉字的方法
Nov 16 Python
python有序查找算法 二分法实例解析
Feb 18 Python
让Django的BooleanField支持字符串形式的输入方式
May 20 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
如何通过一篇文章了解Python中的生成器
Apr 02 Python
Python基本知识点总结
Apr 07 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开发中四种查询返回结果分析
2011/01/02 PHP
解析PHP中$_FILES的使用以及注意事项
2013/07/05 PHP
Zend Framework教程之请求对象的封装Zend_Controller_Request实例详解
2016/03/07 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
多个js与css文件的合并方法详细说明
2012/12/26 Javascript
jQuery中使用Ajax获取JSON格式数据示例代码
2013/11/26 Javascript
js检测判断日期大于多少天的方法
2015/05/04 Javascript
基于JavaScript实现动态添加删除表格的行
2016/02/01 Javascript
浅析AngularJS中的指令
2016/03/20 Javascript
原生JS实现图片左右轮播
2016/12/30 Javascript
详解.vue文件解析的实现
2018/06/11 Javascript
Array数组对象中的forEach、map、filter及reduce详析
2018/08/02 Javascript
Vue 与 Vuex 的第一次接触遇到的坑
2018/08/16 Javascript
详解关于webpack多入口热加载很慢的原因
2019/04/24 Javascript
利用node 判断打开的是文件 还是 文件夹的实例
2019/06/10 Javascript
详解微信小程序开发之formId使用(模板消息)
2019/08/27 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
2019/09/13 Javascript
JS实现网页时钟特效
2020/03/25 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
vue 项目中当访问路由不存在的时候默认访问404页面操作
2020/08/31 Javascript
[03:02]生活中的Dendi之野外度假篇
2016/08/09 DOTA
python 解析html之BeautifulSoup
2009/07/07 Python
Python的设计模式编程入门指南
2015/04/02 Python
python脚本爬取字体文件的实现方法
2017/04/29 Python
元组列表字典(莫烦python基础)
2019/04/03 Python
Python企业编码生成系统之系统主要函数设计详解
2019/07/26 Python
详解python环境安装selenium和手动下载安装selenium的方法
2020/03/17 Python
python上传时包含boundary时的解决方法
2020/04/08 Python
谈谈python垃圾回收机制
2020/09/27 Python
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
美国折扣香水网站:The Perfume Spot
2020/12/12 全球购物
请假条标准格式规范
2014/04/10 职场文书
关于青春的演讲稿三分钟
2014/08/22 职场文书
2014年档案管理员工作总结
2014/12/01 职场文书
2014年幼儿园班级工作总结
2014/12/17 职场文书
2016年优秀共产党员先进事迹材料
2016/02/29 职场文书