如何修复“NameError:名称'日期'未定义”?

时间:2015-05-22 23:19:17

标签: python python-2.7

当我尝试绘制一些数据时,我遇到了一些错误:

import matplotlib
import matplotlib.pyplot as plt
import matplotlib.ticker as mticker
import matplotlib.dates as mdates
import numpy as np
import pylab 
pylab.show()
from matplotlib import style
style.use("ggplot")

def graphRawFX(): date,bid,ask = np.loadtxt('XAUUSDS.txt', unpack=True,
delimiter='\t'  ,
converters={0:mdates.strpdate2num('%d%m%Y%H%M%S%F')})
fig=plt.figure(figsize=(10,7))
ax1 = plt.subplot2grid((40,40), (0,0), rowspan=40, colspan=40)
ax1.plot(date,bid)
ax1.plot(date,ask)
ax1.xaxis.set_major_formatter(mdates.DateFormatter('%d%m%Y %H:%M:%S:%F.'))

for label in ax1.xaxis.get_ticklabels(): label.set_rotation(45)
plt.subplotls_adjust(bottom=.23)
plt.gca().get_yaxis().get_major_formatter().setuseoffset(False)
plt.grid(True)
plt.show()
graphRawFX()
plt.savefig('foo.png')

我得到的错误是:

  

NameError:未定义名称“日期”

2 个答案:

答案 0 :(得分:0)

date仅存在于graphRawFX函数内(也是bidask)。使用全局对象,或者最好从函数中返回它以在外部范围内使用它。

答案 1 :(得分:0)

试试这个:

{{1}}

您应该使用缩进来定义函数范围。