Я пытаюсь написать простой код, чтобы просто построить гистограмму некоторых названий фруктов на оси X против соответствующих единиц продаж.Цель этого кода - просто понять, как запрашивать результаты postgres из базы данных, размещенной на сервере heroku, через приложение-приборную панель.
Ниже приведен код,
from dash import dash
import dash_core_components as dcc
import dash_html_components as html
import plotly.graph_objs as go
import psycopg2
import os
DATABASE_URL = os.environ['DATABASE_URL']
conn = psycopg2.connect(DATABASE_URL, sslmode='require')
cur = conn.cursor()
cur.execute("SELECT fruits FROM pgrt_table")
fruits1=cur.fetchall()
#print(fruits1)
cur.execute("SELECT sales FROM pgrt_table")
sales1=cur.fetchall()
app = dash.Dash()
app.layout = html.Div(children=[
html.H1(
children='Hello Dash'
),
html.Div(
children='''Dash: A web application framework for Python.'''
),
dcc.Graph(
id='example-graph',
figure=go.Figure(
data=[
go.Bar(
x=fruits1, y=sales1, name='SF'),
#{'x': [1, 2, 3], 'y': [2, 4, 5], 'type': 'bar', 'name': u'Montréal'},
],
#'layout':{
# 'title': 'Dash Data Visualization'
#}
)
)
])
if __name__ == '__main__':
app.run_server(debug=True)
Ниже выводится
Вывод на вышеприведенный код
Соответствующий вывод - это просто оси без гистограмм.Соединение с базой данных работает, так как печать fruits1 или sales1 дает мне значения из столбцов в postgres.Единственная проблема - это заговор.
ПРИМЕЧАНИЕ. Этот вопрос был сильно изменен, поскольку предыдущий черновик был чрезвычайно расплывчатым, и в нем не было кода для отображения.