标签:matplotlib data-visualization python
基本上,当使用matplotlib生成图时,y轴上的比例会达到数百万.如何打开数字分组(即1000000显示为1,000,000)或打开小数点分隔符?
解决方法:
我认为没有内置函数可以执行此操作. (这就是我在读完您的Q之后的想法;我只是检查了一下,但在文档中找不到一个).
无论如何,轻松推出自己的游戏.
(下面是一个完整的示例,即,它将生成一个带有坐标滴答标签的轴的mpl图-尽管创建自定义刻度标签只需要五行代码-该函数需要三行代码(包括import语句)用于创建自定义标签,两行用于创建新标签并将其放置在指定的轴上.)
# first code a function to generate the axis labels you want
# ie, turn numbers greater than 1000 into commified strings (12549 => 12,549)
import locale
locale.setlocale(locale.LC_ALL, 'en_US')
fnx = lambda x : locale.format("%d", x, grouping=True)
from matplotlib import pyplot as PLT
import numpy as NP
data = NP.random.randint(15000, 85000, 50).reshape(25, 2)
x, y = data[:,0], data[:,1]
fig = PLT.figure()
ax1 = fig.add_subplot(111)
ax1.plot(x, y, "ro")
default_xtick = range(20000, 100000, 10000)
# these two lines are the crux:
# create the custom tick labels
new_xtick = map(fnx, default_xtick)
# set those labels on the axis
ax1.set_xticklabels(new_xtick)
PLT.show()
标签:matplotlib,data-visualization,python 来源: https://codeday.me/bug/20191210/2099653.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。