【Python学习】(14)matplotlib绘图使用Latex引擎渲染坐标轴刻度文本上标

在使用matplotlib进行数据可视化或科学计算可视化时,有时候数值过大或过小,使得坐标轴刻度显示不方便,这时可以考虑使用科学计数法,例如把10000显示为在这里插入图片描述,把0.00001显示为在这里插入图片描述。在使用matplotlib绘图时,图形标题、坐标轴标签以及刻度文本的字符串两侧如果加上$符号,即可自动调用Latex引擎将字符串渲染为公式,字符串中符号^后面的单个字符会被渲染为上标,如果上标有多于1个字符,可以放在一对花括号{}中。

代码实现如下:

import numpy as np
import matplotlib.pyplot as plt
x= np.arange(-10,10,0.1)
y=np.sin(x)
plt.plot(x,y)
def func(num):
    pre,aft=f'{num:.2e}'.split('e')
    return f'${float(pre):.1f}x10^'+'{'+str(int(aft))+'}$'
plt.xticks(range(-10,12,3),list(map(func,range(-10,12,3))))
plt.yticks(np.arange(-1,1.1,0.25),
            list(map(func,np.arange(-1,1.1,0.25))))
plt.show()

运行后的效果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值