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 zip文件 压缩
Dec 24 Python
Python实现批量下载文件
May 17 Python
Linux RedHat下安装Python2.7开发环境
May 20 Python
Collatz 序列、逗号代码、字符图网格实例
Jun 22 Python
浅谈python正则的常用方法 覆盖范围70%以上
Mar 14 Python
对pandas中两种数据类型Series和DataFrame的区别详解
Nov 12 Python
python分批定量读取文件内容,输出到不同文件中的方法
Dec 08 Python
Django使用redis缓存服务器的实现代码示例
Apr 28 Python
利用python在大量数据文件下删除某一行的例子
Aug 21 Python
有关pycharm登录github时有的时候会报错connection reset的问题
Sep 15 Python
Python3爬虫ChromeDriver的安装实例
Feb 06 Python
Python语言内置数据类型
Feb 24 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
SONY ICF-F10中波修复记
2021/03/02 无线电
输出控制类
2006/10/09 PHP
php中var_export与var_dump的区别分析
2010/08/21 PHP
PHP中根据IP地址判断城市实现城市切换或跳转代码
2012/09/04 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
php header函数的常用http头设置
2015/06/25 PHP
Zend Framework校验器Zend_Validate用法详解
2016/12/09 PHP
PHP培训要多少钱
2017/06/06 PHP
TP5框架实现的数据库备份功能示例
2020/04/05 PHP
Alliance vs AM BO3 第一场2.13
2021/03/10 DOTA
js转义字符介绍
2013/11/05 Javascript
javascript中interval与setTimeOut的区别示例介绍
2014/03/14 Javascript
JS数组的常见用法实例
2015/02/10 Javascript
JavaScript数据结构与算法之链表
2016/01/29 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
JS常用字符串方法(推荐)
2021/01/15 Javascript
vue.js利用defineProperty实现数据的双向绑定
2017/04/28 Javascript
ReactNative Image组件使用详解
2017/08/07 Javascript
Vue实现web分页组件详解
2017/11/28 Javascript
Angular实现的table表格排序功能完整示例
2017/12/22 Javascript
产制造追溯系统之通过微信小程序实现移动端报表平台
2019/06/03 Javascript
详解JS函数防抖
2020/06/05 Javascript
Python类属性的延迟计算
2016/10/22 Python
python 读取Linux服务器上的文件方法
2018/12/27 Python
基于Python安装pyecharts所遇的问题及解决方法
2019/08/12 Python
Python高级特性 切片 迭代解析
2019/08/23 Python
CSS3 @media的基本用法总结
2019/09/10 HTML / CSS
英国领先的体验日提供商:Buyagift
2019/04/19 全球购物
秋天的雨教学反思
2014/04/27 职场文书
学生会感恩节活动方案
2014/10/11 职场文书
中班下学期个人总结
2015/02/12 职场文书
2015年小学生自我评价范文
2015/03/03 职场文书
未中标通知书
2015/04/17 职场文书
复兴之路展览观后感
2015/06/02 职场文书
python基础之错误和异常处理
2021/10/24 Python
Golang 并发编程 SingleFlight模式
2022/04/26 Golang