python - ax.set_yticklabels 将刻度显示为长小数
问题描述
我想用ax.set_yticklabels
. 但是,我得到一个带有很多小数位的奇怪数字。
我的代码有点像这样:
import matplotlib.pyplot as plt
ax = plt.subplot()
ax.plot(np.arange(10), np.arange(10)*0.1)
ax.set_yticks(np.arange(10)*0.1)
ax.set_yticklabels(np.arange(10)*0.1, fontdict={'size':'14'})
plt.tight_layout()
plt.show()
如何摆脱刻度标签中的长小数?
解决方案
ax.set_yticklabels(['{:.2f}'.format(a) for a in np.arange(0,11,0.1)], fontdict={'size':'14'})
这是由于浮点数和字符串之间的转换。您可以通过自己进行转换来控制格式,例如使用字符串格式化函数。
推荐阅读
- google-chrome - 按下chrome扩展快捷键时,如果按下快捷键,操作将继续执行
- angular - Angular10将脚本标签添加到谷歌职位发布的索引中
- python - python-如何将值传递给类装饰器?
- r - 将虚拟变量隐藏为R中的单个分类?
- f# - 为什么这个 F# 引用在运行时失败?
- angular - Bearer 在 Angular 8 和 QT 中的授权问题
- javascript - 看不懂 shouldComponentUpdate() 中的 nextProps?
- javascript - 在 Express FileUpload .mv() 方法中使用函数后不会触发函数的返回语句
- scala - java.lang.NoClassDefFoundError: org/apache/spark/streaming/dstream/InputDStream
- python - 将 tensorflow 从 v2.6 降级到 v1.15 时的问题