Guest User

Untitled

a guest
Mar 2nd, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.22 KB | None | 0 0
  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. import urllib
  4. import matplotlib.dates as mdates
  5.  
  6. def bytespdate2num(fmt, encoding='utf-8'):
  7.    strconverter = mdates.strpdate2num(fmt)
  8.    def bytesconverter(b):
  9.        s = b.decode(encoding)
  10.        return strconverter(s)
  11.    return bytesconverter
  12.  
  13.  
  14. def graph_data():
  15.    stock_price_url = 'https://pythonprogramming.net/yahoo_finance_replacement'
  16.    source_code = urllib.request.urlopen(stock_price_url).read().decode()
  17.  
  18.    stock_data = []
  19.    split_source = source_code.split('\n')
  20.  
  21.    for line in split_source:
  22.        split_line = line.split(',')
  23.        if len(split_line) == 7:
  24.            if 'Volume' not in line:
  25.                stock_data.append(line)
  26.  
  27.    date, openp, highp, lowp, closep, adjustedp, volume = np.loadtxt(stock_data,
  28.                                                          delimiter=',',
  29.                                                          unpack=True,
  30.                                                          converters={0: bytespdate2num('%Y-%m-%d')}            )
  31.    plt.plot_date(date, closep, '-')
  32.  
  33.    plt.xlabel('date')
  34.    plt.ylabel('price')
  35.    plt.title('Interesting graph\nCheck it out')
  36.    plt.legend()
  37.    plt.show()
  38.  
  39.  
  40. graph_data()
Advertisement
Add Comment
Please, Sign In to add comment