Свечной график из базы данных с использованием Python - PullRequest
0 голосов
/ 18 октября 2018
import datetime as dt
import matplotlib.pyplot as plt
from matplotlib import style
import pandas as pd
import pandas_datareader.data as web
import numpy as np
import MySQLdb as db

эта часть используется для подключения к базе данных и извлечения данных из базы данных

db = db.connect(host="localhost", user="root", passwd="root", db="toroi")
cur=db.cursor()
cur.execute('SELECT DATE,Volume,OPEN,High,Low,CLOSE,Adj_Close FROM btc_csv')
fig=plt.figure()
graph=fig.set_facecolor('white')
dates=[]
volume=[]
price=[]
openh=[]
high=[]
low=[]
adj_close=[]


for row in cur.fetchall():
DATE=str(row[0])
print("the total data is ",row)

print("the total data is ",row)
Volume=str(row[1])
print("the total  data ",row)

Open=str(row[2])

High=str(row[3])

Low=str(row[4])

CLOSE=str(row[5])

Adj_Close=str(row[6])




dates.append(DATE)
volume.append(Volume)
openh.append(Open)
high.append(High)
low.append(Low)

price.append(CLOSE)
adj_close.append(Adj_Close)


print(dates)
print(volume)
print(openh)
print(high)
print(low)
print(price)
print(adj_close)
openh=np.array([openh])
high=np.array([high])
low=np.array([low])
close=np.array([price])
volume=np.array([volume])

до тех пор, пока здесь код работает хорошо, но так как я не могу построить график подсвечника, я сделал все

n_groups=len(openh)
index=np.arange(n_groups)
fig,ax=plt.subplots()
bar_height=np.absolute(openh-close)
bat_bottom=np.minimum(openh,close)
yerr_high=high - np.maximum(openh,close)
yerr_low=np.minimun(open,close)-low+bar_height
bar_width=0.5
opacity=1
error_config={'alpha':opacity}
rects1 = ax.bar(index,bar_height,bar_width,bar_bottom,alpha=opacity,error_kw = error_config,yerr =[yerr_low, yerr_high])
ax.set_xlabel('Date')
Text(0.5,0,'Date')
ax.set_ylabel('Price')
Text(0,0.5,'Price')
ax.set_title('Candlestick Chart')
Text(0.5,1,'Candlestick Chart')


plt.show()
cur.close()
db.close() 

, пожалуйста, помогите мне изменить код или перепишите код для чтения базы данных формы данных, чтобы заранее построить график подсвечника

...