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

本文介绍如何使用Python的matplotlib库将图表的坐标轴显示为百分比格式,通过实例展示了如何利用FuncFormatter函数进行坐标轴格式化,适用于展示数据变化的百分比。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

reference: https://blog.youkuaiyun.com/u014712482/article/details/80571938

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

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

例子:


 
 
  1. # encoding=utf-8
  2. import matplotlib.pyplot as plt
  3. from matplotlib.ticker import FuncFormatter
  4. plt.rcParams[ ‘font.family’] = [ ‘Times New Roman’]
  5. plt.rcParams.update({ ‘font.size’: 8})
  6. x = range( 11)
  7. y = range( 11)
  8. plt.plot(x, y)
  9. plt.show()

图形显示如下:


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


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

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


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

重要代码

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

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



参考文献

1. http://sofasofa.io/forum_main_post.php?postid=1000816

2. http://www.zeuux.com/group/scipython/bbs/content/53419/

3. https://blog.youkuaiyun.com/pipisorry/article/details/37742423



Pythonmatplotlib是一个用于数据可视化的库,用于创建各种类型的图表和绘图。使用matplotlib库,可以通过设置横纵坐标轴数值百分比(%)显示来自定义图表的样式。为了在图表中显示中文字符,可以使用以下代码: ``` import matplotlib.pyplot as plt import matplotlib matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文 matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 ``` 接下来,可以使用numpy生成一些示例数据,并使用matplotlib绘制图表。例如,以下代码生成了一个函数曲线图: ``` import numpy as np import matplotlib.pyplot as plt x = np.linspace(-np.pi/2, np.pi/2, 500) y = (0.64*np.sqrt(abs(x))-0.8*1.2**abs(x)*np.cos(200*x))*np.sqrt(np.cos(x)) plt.figure(figsize=(10,10),dpi=50) plt.plot(x,y,color='r') plt.grid() plt.show() ``` 以上代码将在一个大小为10x10,分辨率为50的画布上绘制出函数曲线图,并显示在屏幕上。 另外,matplotlib还提供了许多其他功能,比如绘制柱状图、散点图、饼图等等。下面是一个简单的例子,展示如何绘制一个基本的折线图: ``` import matplotlib.pyplot as plt plt.figure() # 创建画布 x = range(6) y = range(4,10) plt.plot(x,y) # 绘制图像 plt.show() # 显示图像 ``` 这段代码将创建一个画布,并在其中绘制了一个折线图,然后将图像显示在屏幕上。 总结:Pythonmatplotlib库提供了丰富的功能,可以用于创建各种类型的图表和绘图。从简单的折线图到复杂的曲线图,都可以使用matplotlib来实现。通过设置横纵坐标轴数值百分比(%)显示,以及其他自定义的样式设置,可以让图表更加具有可读性和美观性。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值