第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Dash:跨頁(yè)面具有相同數(shù)據(jù)的多頁(yè)面應(yīng)用程序

Dash:跨頁(yè)面具有相同數(shù)據(jù)的多頁(yè)面應(yīng)用程序

喵喵時(shí)光機(jī) 2023-08-08 16:51:33
我的問題是,數(shù)據(jù)總共位于四個(gè)數(shù)據(jù)幀中,并且我的應(yīng)用程序中的三個(gè)頁(yè)面中的每一頁(yè)都使用其中多個(gè)數(shù)據(jù)幀來可視化內(nèi)容。我試圖避免每次調(diào)用其中一個(gè)頁(yè)面時(shí)都重新加載數(shù)據(jù)幀。這可能嗎?如何?目前,我嘗試首先使用 index.py 中的函數(shù)加載 df,然后加載其他頁(yè)面:df_fz, df_md, df_auf, df_mat = get_dfs()from apps import app1, app2, app3[...]@app.callback(Output('page-content', 'children'),? ? ? ? ? ? ? [Input('url', 'pathname')])def display_page(pathname):? ? if pathname == '/app1':? ? ? ? return app1.layout? ? elif pathname == '/app2':? ? ? ? return app2.layout? ? else:? ? ? ? return app3.layoutapp1 到 app3 中的每一個(gè)都使用數(shù)據(jù)幀,就好像它們是在腳本頂部加載的一樣,但此代碼按原樣拋出錯(cuò)誤,因?yàn)?df 未定義。app3 的一個(gè)最小示例:layout = html.Div([? ? html.H3('App 3'),? ? dcc.Dropdown(? ? ? ? id='app-3-dropdown',? ? ? ? options=[? ? ? ? ? ? {'label': 'App 3 - {}'.format(i), 'value': i} for i in [df_fz.Value]? ? ? ? ]? ? ),? ? html.Div(id='app-3-display-value'),])@app.callback(? ? Output('app-3-display-value', 'children'),? ? [Input('app-3-dropdown', 'value')])def display_value(value):? ? return 'You have selected "{}" but in App 3'.format(value)
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊

看起來您需要做的就是創(chuàng)建一個(gè)模塊,其中包含可以在不同文件之間共享的數(shù)據(jù)。

data.py

import pandas as pd
df1 = pd.DataFrame()

app1.py

from data import df1

app2.py

from data import df1

模塊變量是全局變量,因此所有文件都將共享相同的 df1,并且由于它是導(dǎo)入,因此它將在 app、app1 等中的其余代碼之前運(yùn)行。

您還可以在開頭保留 id='app-3-dropdown', options=[] ,然后創(chuàng)建選項(xiàng)列表作為 'app-3-dropdown' 的回調(diào)。

您可以將數(shù)據(jù)幀存儲(chǔ)在 dcc.Store(id='df-data', data=df.to_dict()) 中,并且可以用作其他回調(diào)的輸入或狀態(tài)。


查看完整回答
反對(duì) 回復(fù) 2023-08-08
?
富國(guó)滬深

TA貢獻(xiàn)1790條經(jīng)驗(yàn) 獲得超9個(gè)贊

嘗試將數(shù)據(jù)幀放入數(shù)據(jù)集文件夾中,并將它們連接到每個(gè)應(yīng)用程序頁(yè)面中。像這樣的東西:

PATH?=?pathlib.Path(__file__).parent
DATA_PATH?=?PATH.joinpath("../datasets").resolve()
df?=?pd.read_csv(DATA_PATH.joinpath("mydata.csv"))


查看完整回答
反對(duì) 回復(fù) 2023-08-08
?
慕工程0101907

TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個(gè)贊

以下文件結(jié)構(gòu)-

-?app.py
-?index.py
-?apps
???|--?__init__.py
???|--?app1.py
???|--?app2.py

嘗試這種讀取“app.py”文件中的數(shù)據(jù)幀的方法。由于每個(gè)“app1.py”、“app2.py”、“app3.py”都使用這些數(shù)據(jù)幀,因此請(qǐng)?jiān)谶@些文件中導(dǎo)入 df,即在“app1.py”代碼中:

from?app?import?app
from?app?import?df_fz,?df_md,?df_auf,?df_mat

對(duì)于其他文件也是如此。


查看完整回答
反對(duì) 回復(fù) 2023-08-08
  • 3 回答
  • 0 關(guān)注
  • 278 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)