我用Flask(带有JS前端)构建了一个Webapp,现在我想添加图表来显示我的数据。
我设法在上面嵌入了图表,但是它是静态的,有没有办法使它动态化(例如,使用随机值,以便以后可以向其中添加自己的数据)?
def index():
rng = pd.date_range('1/1/2011', periods=7500, freq='H')
ts = pd.Series(np.random.randn(len(rng)), index=rng)
graphs = [
dict(
data=[
dict(
x= arr,
y=[10, 20, 30],
type='scatter'
),
],
layout=dict(
title='first graph'
)
)
]
# Add "ids" to each of the graphs to pass up to the client
# for templating
ids = ['graph-{}'.format(i) for i, _ in enumerate(graphs)]
# Convert the figures to JSON
# PlotlyJSONEncoder appropriately converts pandas, datetime, etc
# objects to their JSON equivalents
graphJSON = json.dumps(graphs, cls=plotly.utils.PlotlyJSONEncoder)
return render_template('index.html',
ids=ids,
graphJSON=graphJSON)
答案 0 :(得分:1)
HTTP本质上是无状态的,因此,如果要动态化,则必须在前端进行。
在不了解您的前端的情况下,我无法提供具体示例, 但希望这能使您走上正确的轨道:
Plotly.extendtraces
更新图表了