Dec-01-2016, 06:15 AM
I'm not able to attach my code here.
This is about converting standard date formats to matplotlib's own kind of format (something gregorian calendar related), I tried to solve it by reading about it in the official documentation but that was too much to swallow. If anyone here has a basic concept about it, please help with a healthy discussion down there. Thank you!
http://pastebin.com/u2Yk3EGD My code.
This is about converting standard date formats to matplotlib's own kind of format (something gregorian calendar related), I tried to solve it by reading about it in the official documentation but that was too much to swallow. If anyone here has a basic concept about it, please help with a healthy discussion down there. Thank you!
http://pastebin.com/u2Yk3EGD My code.
import matplotlib.pyplot as plt import numpy as np import urllib import matplotlib.dates as mdates def bytespdate2num(fmt, encoding='utf-8'): strconverter = mdates.strpdate2num(fmt) def bytesconverter(b): s = b.decode(encoding) return strconverter(s) return bytesconverter def graph_data(stock): stock_price_url = 'http://chartapi.finance.yahoo.com/instrument/1.0/'+stock+'/chartdata;type=quote;range=10y/csv' source_code = urllib.request.urlopen(stock_price_url).read().decode() stock_data = [] split_source = source_code.split('\n') for line in split_source: split_line = line.split(',') if len(split_line) == 6: if 'values' not in line and 'labels' not in line: stock_data.append(line) date, closep, highp, lowp, openp, volume = np.loadtxt(stock_data, delimiter=',', unpack=True, # %Y = full year. 2015 # %y = partial year 15 # %m = number month # %d = number day # %H = hours # %M = minutes # %S = seconds # 12-06-2014 # %m-%d-%Y converters={0: bytespdate2num('%Y%m%d')}) plt.plot_date(date, closep,'-', label='Price') plt.xlabel('Date') plt.ylabel('Price') plt.title('Interesting Graph\nCheck it out') plt.legend() plt.show() graph_data('TSLA')Even if you are able to make me understand the working of 'bytespdate2num' function in the above code will be helpful.