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操作mysql中文显示乱码的解决方法
Oct 11 Python
python与caffe改变通道顺序的方法
Aug 04 Python
Python中asyncio与aiohttp入门教程
Oct 16 Python
python 使用sys.stdin和fileinput读入标准输入的方法
Oct 17 Python
python reverse反转部分数组的实例
Dec 13 Python
python 实现UTC时间加减的方法
Dec 31 Python
Python的bit_length函数来二进制的位数方法
Aug 27 Python
Python中BeautifuSoup库的用法使用详解
Nov 15 Python
python3 常见解密加密算法实例分析【base64、MD5等】
Dec 19 Python
如何定义TensorFlow输入节点
Jan 23 Python
彻底解决pip下载pytorch慢的问题方法
Mar 01 Python
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
Jun 05 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模板的朋友必看的很多个顶级PHP模板引擎比较分析
2008/05/26 PHP
解析php多线程下载远程多个文件
2013/06/25 PHP
PHP链接MySQL的常用扩展函数
2014/10/23 PHP
php PDO异常处理详解
2016/11/20 PHP
javascript 通用简单的table选项卡实现
2010/05/07 Javascript
用js判断页面是否加载完成实现代码
2012/12/11 Javascript
Javascript aop(面向切面编程)之around(环绕)分析
2015/05/01 Javascript
简单实现js选项卡切换效果
2016/02/03 Javascript
jQuery实现简单倒计时功能的方法
2016/07/04 Javascript
原生js仿jquery实现对Ajax的封装
2016/10/04 Javascript
canvas绘制的直线动画
2017/01/23 Javascript
Vue2.0基于vue-cli+webpack同级组件之间的通信教程(推荐)
2017/09/14 Javascript
JavaScript常用内置对象用法分析
2019/07/09 Javascript
解决Nuxt使用axios跨域问题
2020/07/06 Javascript
Python网络编程详解
2017/10/31 Python
python多线程与多进程及其区别详解
2019/08/08 Python
python的命名规则知识点总结
2019/10/04 Python
Python timer定时器两种常用方法解析
2020/01/20 Python
PyCharm License Activation激活码失效问题的解决方法(图文详解)
2020/03/12 Python
python线程池如何使用
2020/05/28 Python
python和php学习哪个更有发展
2020/06/17 Python
python实现取余操作的简单实例
2020/08/16 Python
HTML5中FileReader接口使用方法实例详解
2017/08/26 HTML / CSS
美国知名户外用品畅销中心:Sierra Trading Post
2016/07/19 全球购物
Osklen官方在线商店:巴西服装品牌
2019/04/25 全球购物
英国时尚和家居用品零售商:Matalan
2021/02/28 全球购物
计算机科学系职业生涯规划书
2014/03/08 职场文书
养成教育经验材料
2014/05/26 职场文书
领导班子四风对照检查材料范文
2014/09/27 职场文书
党的群众路线专项整治方案
2014/11/03 职场文书
校长个人总结
2015/03/03 职场文书
2015年行风建设工作总结
2015/05/15 职场文书
2016年党员干部廉政承诺书
2016/03/24 职场文书
创业计划书之韩国烧烤店
2019/09/19 职场文书
CocosCreator入门教程之网络通信
2021/04/16 Javascript
Python基础之pandas数据合并
2021/04/27 Python