Closed itutu-tienday closed 2 days ago
optinist-for-serverの環境構築を進めています。 python run_expdb_batch.py -o 1 を実行した時には、終了するまで結構時間がかかっています。 (裏側で動いているかは分かりません。)
import plotly.express as px
import plotly.io as pio
import os
class KaleidoTest:
def __init__(self, data, columns, file_name):
self.data = data
self.columns = columns
self.file_name = file_name
def join_filepath(self, paths):
return os.path.join(*paths)
def save_thumbnail(self, plot_file):
# Placeholder function for saving a thumbnail
print(f"Thumbnail saved for {plot_file}")
def generate_plots(self, output_dir):
for i in range(len(self.data)):
fig = px.line(y=self.data[i], x=self.columns)
plot_file = self.join_filepath([output_dir, f"{self.file_name}_{i}.png"])
pio.write_image(fig, plot_file)
self.save_thumbnail(plot_file)
print(f"Plot saved to {plot_file}")
if __name__ == "__main__":
data = [[1, 3, 2], [2, 4, 5], [5, 3, 6], [7,6,5],[4,2,3],[1,1,1],[8,9,7],[2,4,5]]
columns = [1, 2, 3]
file_name = "plot"
output_dir = "/app/output"
os.makedirs(output_dir, exist_ok=True)
test = KaleidoTest(data, columns, file_name)
test.generate_plots(output_dir)
上記のテストコードで試しましたが、問題なく動きました。 そのため、Matと同じファイルを使うようにするテストをやると、止まっているところを特定する
@tsuchiyama-araya ありがとうございます。TuningCurveの7でいつも止まっていたと思うのでそこでどのようなデータが使われていて、他とどう違うかを共有してもらいたいです。
7までのデータを確認すると、変なデータが入っていないので、 データに関しての問題は怪しくなってきました。
@tsuchiyama-araya まず確認が必要な事項は、処理実行が停止している箇所の確定(探索可能なところまでpythonコードをjumpして調査)ではないでしょうか。 ※データの確認も必要ですが、コードの停止位置の詳細を特定後、その他周辺調査を行う形が、調査がスムーズではないかと考えます。
@itutu-tienday コメントありがとうございます。 停止場所はline.pyにある関数のsave_plotのwrite_imageが実行される時ですね。
ただ、7回目から停止しています。 こちらは回答になっていますでしょうか?
@tsuchiyama-araya
停止場所はline.pyにある関数のsave_plotのwrite_imageが実行される時ですね。
上記は、先日 共有済みの情報ではありませんでしょうか? (新規情報でしょうか)
(探索可能なところまでpythonコードをjumpして調査)
上記は、以下のように、vscodeなどで pip module 内のコードを探索することを指しています。
先日共有した情報と同じです。 なるほど、共有ありがとうございます。
そちらで止まっていることであっています。
対象ファイル (/site-packages/plotly/io/_kaleido.py) 内の、どの位置で停止しているかは、確認済みでしょうか
それを確認するために、出力するようにPrintを入れましたが、表示はされなかったです。
それを確認するために、出力するようにPrintを入れましたが、表示はされなかったです。
そうですか、ちょっと原因は不明ですが、そうであれば以下のような対応でしょうか
テストに同じデータを試しましたが、止まりました! これはデータの問題かと思います。
また、次はDebuggerなども利用して、Debugをしてみます。
7行目のデータに問題があるかと思いましたが、試しに成功している 5行目と6行目のデータを7行目に入れてみたところ、それでも処理が停止します。
したがって、データ自体の問題ではなく、7行目を処理する際に 何か問題が発生している可能性があります。データ関連の問題ではなさそうです。
Environment Setup
[x] barebone-stuio
[x] Standalone mode
[x] MultiUser mode
[x] Docker version
[x] optinist-for-server
production site
repository
setup manual
Specification Confirmation
373