1

Holoviz Panel ドロップダウン ウィジェット値を使用してデータフレームをクエリしようとしています。ただし、データフレームはドロップダウン値の変更を反映していません。ドロップダウン値の変更がキャプチャされているかどうかを確認するためのマークダウン ウィジェットを追加しました。ただし、データフレームを更新する方法がわかりません。私はプログラミングの完全な初心者で、学ぼうとしています。どんな助けでも大歓迎です。

import pandas as pd
import panel as pn
pn.extension()

# Dataframe

df = pd.DataFrame({'CcyPair':['EUR/USD', 'AUD/USD' ,'USD/JPY'], 
                   'Requester':['Client1', 'Client2' ,'Client3'],
                  'Provider':['LP1', 'LP2' ,'LP3']})

# Dropdown

a2 = pn.widgets.Select(options=list(df.Provider.unique()))

# Query dataframe based on value in Provider dropdown

def query(x=a2):
    y = pn.widgets.DataFrame(df[(df.Provider==x)])
    return y

# Test Markdown Panel to check if the dropdown change returns value

s = pn.pane.Markdown(object='')

# Register watcher and define callback

w = a2.param.watch(callback, ['value'], onlychanged=False)

def callback(*events):
    print(events)
    for event in events:
        if event.name == 'value':
            df1 = query(event.new)
            s.object = event.new

# Display Output

pn.Column(query, s)

出力画像

4

1 に答える 1