使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示


Posted in Python onMay 16, 2020

一、当我们用Python matplot时作图时,一些数据需要以百分比显示,以更方便地对比模型的性能提升百分比。

二、借助matplotlib.ticker.FuncFormatter(),将坐标轴格式化。

例子:

# encoding=utf-8
import matplotlib.pyplot as plt 
from matplotlib.ticker import FuncFormatter
plt.rcParams['font.family'] = ['Times New Roman']
plt.rcParams.update({'font.size': 8}) 
x = range(11)
y = range(11)
plt.plot(x, y)
plt.show()

图形显示如下:

使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示

现在我们将横纵坐标变成百分比形式即,0%,20%,40%....代码如下:

# encoding=utf-8
import matplotlib.pyplot as plt 
from matplotlib.ticker import FuncFormatter
plt.rcParams['font.family'] = ['Times New Roman']
plt.rcParams.update({'font.size': 8}) 
x = range(11)
y = range(11)
plt.plot(x, y)
 
def to_percent(temp, position):
  return '%1.0f'%(10*temp) + '%'
plt.gca().yaxis.set_major_formatter(FuncFormatter(to_percent))
plt.gca().xaxis.set_major_formatter(FuncFormatter(to_percent))
 
plt.show()

即增加了10~13的代码,执行结果如下:

使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示

可见已经实现我们的需求。

重要代码

return '%1.0f'%(10*temp) + '%' #这句话指定了显示的格式。

更多格式化显示,可以查看matplotlib.ticker。

补充知识:matplotlib画图系列之设置坐标轴(精度、范围,标签,中文字符显示)

在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等

在matplotlib中包含了很多函数,用来对这些参数进行设置。

plt.xlim、plt.ylim 设置横纵坐标轴范围
plt.xlabel、plt.ylabel 设置坐标轴名称
plt.xticks、plt.yticks设置坐标轴刻度

以上plt表示matplotlib.pyplot

例子

#导入包
import matplotlib.pyplot as plt
import numpy as np
#支持中文显示
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
 
#创建数据
x = np.linspace(-5, 5, 100)
y1 = np.sin(x)
y2 = np.cos(x)
 
#创建figure窗口
plt.figure(num=3, figsize=(8, 5))
#画曲线1
plt.plot(x, y1)
#画曲线2
plt.plot(x, y2, color='blue', linewidth=5.0, linestyle='--')
#设置坐标轴范围
plt.xlim((-5, 5))
plt.ylim((-2, 2))
#设置坐标轴名称
plt.xlabel('xxxxxxxxxxx')
plt.ylabel('yyyyyyyyyyy')
#设置坐标轴刻度
my_x_ticks = np.arange(-5, 5, 0.5)
my_y_ticks = np.arange(-2, 2, 0.3)
plt.xticks(my_x_ticks)
plt.yticks(my_y_ticks)
 
#显示出所有设置
plt.show()

结果

使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示

以上这篇使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python语言实现机器学习的K-近邻算法
Jun 11 Python
python 获取网页编码方式实现代码
Mar 11 Python
利用python3随机生成中文字符的实现方法
Nov 24 Python
Python3实现腾讯云OCR识别
Nov 27 Python
django最快程序开发流程详解
Jul 19 Python
python文件读写代码实例
Oct 21 Python
python爬虫模拟浏览器的两种方法实例分析
Dec 09 Python
Python版中国省市经纬度
Feb 11 Python
Python Socketserver实现FTP文件上传下载代码实例
Mar 27 Python
详解python安装matplotlib库三种失败情况
Jul 28 Python
浅析Python 字符编码与文件处理
Sep 24 Python
详解pycharm配置python解释器的问题
Oct 15 Python
Python验证码截取识别代码实例
May 16 #Python
基于plt.title无法显示中文的快速解决
May 16 #Python
基于python生成英文版词云图代码实例
May 16 #Python
解决Python数据可视化中文部分显示方块问题
May 16 #Python
Python使用Excel将数据写入多个sheet
May 16 #Python
python小程序之4名牌手洗牌发牌问题解析
May 15 #Python
python3 使用openpyxl将mysql数据写入xlsx的操作
May 15 #Python
You might like
PHP限制页面只能在微信自带浏览器访问的代码
2014/01/15 PHP
PHP二维数组排序的3种方法和自定义函数分享
2014/04/09 PHP
php mongodb操作类 带几个简单的例子
2016/08/25 PHP
jQuery登陆判断简单实现代码
2013/04/21 Javascript
JavaScript动态插入script的基本思路及实现函数
2013/11/11 Javascript
javascript的解析执行顺序在各个浏览器中的不同
2014/03/17 Javascript
Javascript中匿名函数的调用与写法实例详解(多种)
2016/01/26 Javascript
微信小程序实现带刻度尺滑块功能
2017/03/29 Javascript
vue调用高德地图实例代码
2017/04/28 Javascript
微信小程序 监听手势滑动切换页面实例详解
2017/06/15 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
2019/05/09 Javascript
vue2.0 解决抽取公用js的问题
2020/07/31 Javascript
谈谈JavaScript中的垃圾回收机制
2020/09/17 Javascript
Python的Django框架中TEMPLATES项的设置教程
2015/05/29 Python
Python中字典和集合学习小结
2017/07/07 Python
利用python脚本如何简化jar操作命令
2019/02/24 Python
简单了解python代码优化小技巧
2019/07/08 Python
python实现操作文件(文件夹)
2019/10/31 Python
Keras使用ImageNet上预训练的模型方式
2020/05/23 Python
Python tkinter界面实现历史天气查询的示例代码
2020/08/23 Python
CSS3 @font-face属性使用指南
2014/12/12 HTML / CSS
如果NULL和0作为空指针常数是等价的,那我到底该用哪一个
2014/09/16 面试题
JAVA招聘远程笔试题
2015/07/23 面试题
《陶罐和铁罐》教学反思
2014/02/19 职场文书
党员干部2014全国两会学习心得体会
2014/03/10 职场文书
融资租赁计划书
2014/04/29 职场文书
学校安全防火方案
2014/06/07 职场文书
国贸专业求职信
2014/06/28 职场文书
2014年大学生党员评议表自我评价
2014/09/20 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
工作期间打牌检讨书范文
2014/11/20 职场文书
万能检讨书
2015/01/27 职场文书
2015年农村党员干部主题教育活动总结
2015/03/25 职场文书
小学运动会开幕词
2016/03/04 职场文书
原型和原型链 prototype和proto的区别详情
2021/11/02 Javascript