2015-05-22 208 views
0

我有一些錯誤,當我嘗試並繪製了一些數據:如何解決「NameError:Name'日期'未定義」?

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: Name 'date' is not defined

+1

解決您的間距, – cwallenpoole

回答

0

試試這個:

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') 

if __name__=='__main__': 
    graphRawFX() 

你應該使用縮進來定義的功能範圍。

+0

我得到壓痕錯誤IM farily新的使用記事本++到Python – LibertySIlver

+0

IM,如果我對Python的運行外殼似乎工作,但然後我得到的日期 – LibertySIlver

+0

@LibertySIlver你有壓痕錯誤或錯誤NameError使用我建議的代碼後? –

0

date只有graphRawFX功能(也bidask)內部存在。使用一個全局對象,或者更好地從你的函數返回它以在外部作用域中使用它。

相關問題