首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >matplotlib图yahoo chart api图图

matplotlib图yahoo chart api图图
EN

Stack Overflow用户
提问于 2014-10-12 22:22:19
回答 1查看 682关注 0票数 1

我刚开始学习matplotlib。我正在尝试绘制雅虎字符api图股票。我正在尝试这个程序,但它不是working...there是我的程序

代码语言:javascript
复制
import numpy as np 
import matplotlib.pyplot as plt 
import matplotlib.dates as mdates

def graph():
    date, closep, highp, lowp, openp, valuep = np.loadtxt('/home/najeeb/Desktop/table.csv', delimiter=',', unpack=True,
                          converters={0: mdates.strpdate2num('%Y-%m-%d')})

   fig = plt.figure()
   ax1 = fig.add_subplot(1,1,1, axisbg='w')
   plt.plot_date(x=date, y=value, fmt='-')

   plt.title('title')
   plt.ylabel('value')
   plt.xlabel('date')
   plt.show()
graph()

here is CSV file

请指导我如何解决这个问题,并有其他任何方法来绘制股票graph...thank你

EN

回答 1

Stack Overflow用户

发布于 2014-10-21 03:19:16

CSV文件如下所示:

代码语言:javascript
复制
Date,Open,High,Low,Close,Volume,Adj Close
2014-10-17,97.50,99.00,96.81,97.67,68032200,97.67
2014-10-16,95.55,97.72,95.41,96.26,72110700,96.26
2014-10-15,97.97,99.15,95.18,97.54,100875400,97.54

您的代码np.loadtxt()试图将标头' date‘解析为日期,但由于该字符串不是有效的日期值而无法工作,因此我使用skiprows=1跳过了标头。

另一个问题是,CSV有7列,而在元组中只解包了6个值

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import urllib2


url = 'http://ichart.finance.yahoo.com/table.csv?s=AAPL&d=9&e=14&f=2008&g=d&a=8&b=7&c=1984&ignore=.csv'

def graph():
    date, open, high, low, close, volume, adj_close = np.loadtxt(urllib2.urlopen(url), skiprows=1, delimiter=',', unpack=True, converters={0: mdates.strpdate2num('%Y-%m-%d')})

    fig = plt.figure()
    ax1 = fig.add_subplot(1,1,1, axisbg='w')
    plt.plot_date(x=date, y=adj_close, fmt='-')

    plt.title('Apple, 1984 to 2008')
    plt.ylabel('Adjusted close')
    plt.xlabel('Date')
    plt.show()

graph()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26326117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档