Python matplotlib.pyplot.annotate():使用';轴分数';协调
当我在水平轴上使用大数字时,我在matplotlib.pyplot.annotate()方面遇到了一些问题,例如,在“从历元开始的秒数”中使用时间数据进行时间序列,数据将达到10^9 以下是一个例子:Python matplotlib.pyplot.annotate():使用';轴分数';协调,python,python-2.7,matplotlib,plot,annotate,Python,Python 2.7,Matplotlib,Plot,Annotate,当我在水平轴上使用大数字时,我在matplotlib.pyplot.annotate()方面遇到了一些问题,例如,在“从历元开始的秒数”中使用时间数据进行时间序列,数据将达到10^9 以下是一个例子: import matplotlib matplotlib.use('TkAgg') import matplotlib.pyplot as plt import os.path import random import calendar save_path='my_path' fig,a
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
import os.path
import random
import calendar
save_path='my_path'
fig,ax=plt.subplots(2,sharex=True)
fig.set_size_inches(6,5)
a=int(calendar.timegm((2009,1,1,0,0,0)))
b=int(calendar.timegm((2009,2,1,0,0,0)))
x=xrange(a,b,(b-a)/100)
#x=xrange(0,b-a,(b-a)/100)
y=[random.random() for i in x]
z=[random.random() for i in x]
ax[0].scatter(x,y)
ax[1].scatter(x,z)
for sub in ax:
sub.set_xlim(x[0],x[-1])
ax[0].annotate('test',(0.1,0.1),textcoords='axes fraction')
ax[1].annotate('test',(0.9,0.9),textcoords='axes fraction')
fig.savefig(os.path.join(save_path,'test.png'),bbox_inches='tight')
plt.close()
带有x=x范围(a,b,(b-a)/100)
我得到:
而x=xrange(0,b-a,(b-a)/100)
我得到:
我不明白为什么第一个案例不起作用,但第二个案例正如预期的那样起作用,我只是基本上减少了数字。
如果我使用“数据”坐标,我没有问题。你能把示例代码缩短一些吗?有太多的代码,让人们阅读它来帮助你。如果你能让别人更容易地帮助你,你会得到更好的帮助。是的,对不起,我只是简单地说了一句。这个问题还没有很好地表达出来吗?我应该删除并重新创建这篇文章而不是简单地编辑吗?不,绝对不要提出新的问题,这往往会让人恼火。现在问题看起来好多了。你能把示例代码缩短一些吗?有太多的代码,让人们阅读它来帮助你。如果你能让别人更容易地帮助你,你会得到更好的帮助。是的,对不起,我只是简单地说了一句。这个问题还没有很好地表达出来吗?我应该删除并重新创建这篇文章而不是简单地编辑吗?不,绝对不要提出新的问题,这往往会让人恼火。现在这个问题看起来好多了。