私はフックに慣れていないので、アドバイスが必要です。入力としていくつかのデータを取り、プロットを生成する関数があるとします。
def f(data, options):
plot = produce_plot(data)
apply_options(plot) # changing colors, style, ...
export(plot, option.format)
return plot
この関数はユーザーによって直接呼び出されるのではなく、ループ内で呼び出されます。次に例を示します。
data_categories = divide_in_category(data)
for d in data_categories: f(data, color=user_option.color, format='png')
ここで、必要に応じて、このプロットでさらに多くのことを行う可能性をユーザーに提供したいと考えています。ユーザーがラベルを追加していくつかの適合を行いたいと仮定すると、 function の内部にアクセスするためのフックを提供することをお勧めしますf
。フックはexport
関数の直前に実行する必要があります。質問: どのようにそれを行う? f
フックの内部の内部を提供する方法は?
, , ...などのoptions
引数を持つ無限のユースケースをすべて処理することはできません。options.do_fit
options.add_label