From 1b7005d1131d56d77e9a1c36ed985a12a07430c1 Mon Sep 17 00:00:00 2001 From: yoshinobc Date: Thu, 28 Apr 2022 21:21:45 +0900 Subject: [PATCH 1/3] changed filter function for trials and display name --- .../ts/components/GraphIntermediateValues.tsx | 39 ++++++++++++------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/optuna_dashboard/ts/components/GraphIntermediateValues.tsx b/optuna_dashboard/ts/components/GraphIntermediateValues.tsx index 369fde04..b1de1c59 100644 --- a/optuna_dashboard/ts/components/GraphIntermediateValues.tsx +++ b/optuna_dashboard/ts/components/GraphIntermediateValues.tsx @@ -51,20 +51,31 @@ const plotIntermediateValue = (trials: Trial[], mode: string) => { return } - const filteredTrials = trials.filter( - (t) => - t.state === "Complete" || - (t.state === "Pruned" && t.values && t.values.length > 0) - ) - const plotData: Partial[] = filteredTrials.map((trial) => { - const values = trial.intermediate_values.filter((iv) => iv.value !== "inf") - return { - x: values.map((iv) => iv.step), - y: values.map((iv) => iv.value), - mode: "lines+markers", - type: "scatter", - name: `trial #${trial.number}`, + const sortedFilteredTrials = trials + .filter( + (t) => + t.state === "Complete" || + (t.state === "Pruned" && t.values && t.values.length > 0) || + t.state == "Running" + ) + .slice() + .sort((a: Trial, b: Trial) => a.number - b.number) + const plotData: Partial[] = sortedFilteredTrials.map( + (trial) => { + const values = trial.intermediate_values.filter( + (iv) => iv.value !== "inf" + ) + return { + x: values.map((iv) => iv.step), + y: values.map((iv) => iv.value), + mode: "lines+markers", + type: "scatter", + name: + trial.state !== "Running" + ? `trial #${trial.number}` + : `trial #${trial.number} (running)`, + } } - }) + ) plotly.react(plotDomId, plotData, layout) } From a1b80b4571c862b28a285860b8d73d10cce58eda Mon Sep 17 00:00:00 2001 From: yoshinobc Date: Mon, 9 May 2022 14:33:51 +0900 Subject: [PATCH 2/3] sorting in action.ts --- optuna_dashboard/ts/action.ts | 2 +- .../ts/components/GraphIntermediateValues.tsx | 43 ++++++++----------- 2 files changed, 19 insertions(+), 26 deletions(-) diff --git a/optuna_dashboard/ts/action.ts b/optuna_dashboard/ts/action.ts index e2f86a17..1bc8eeff 100644 --- a/optuna_dashboard/ts/action.ts +++ b/optuna_dashboard/ts/action.ts @@ -55,7 +55,7 @@ export const actionCreator = () => { studyId in studyDetails ? studyDetails[studyId].trials.slice(0, nLocalFixedTrials) : [] - study.trials = study.trials.concat(currentFixedTrials) + study.trials = currentFixedTrials.concat(study.trials) setStudyDetailState(studyId, study) }) .catch((err) => { diff --git a/optuna_dashboard/ts/components/GraphIntermediateValues.tsx b/optuna_dashboard/ts/components/GraphIntermediateValues.tsx index b1de1c59..5730467a 100644 --- a/optuna_dashboard/ts/components/GraphIntermediateValues.tsx +++ b/optuna_dashboard/ts/components/GraphIntermediateValues.tsx @@ -51,31 +51,24 @@ const plotIntermediateValue = (trials: Trial[], mode: string) => { return } - const sortedFilteredTrials = trials - .filter( - (t) => - t.state === "Complete" || - (t.state === "Pruned" && t.values && t.values.length > 0) || - t.state == "Running" - ) - .slice() - .sort((a: Trial, b: Trial) => a.number - b.number) - const plotData: Partial[] = sortedFilteredTrials.map( - (trial) => { - const values = trial.intermediate_values.filter( - (iv) => iv.value !== "inf" - ) - return { - x: values.map((iv) => iv.step), - y: values.map((iv) => iv.value), - mode: "lines+markers", - type: "scatter", - name: - trial.state !== "Running" - ? `trial #${trial.number}` - : `trial #${trial.number} (running)`, - } - } + const FilteredTrials = trials.filter( + (t) => + t.state === "Complete" || + (t.state === "Pruned" && t.values && t.values.length > 0) || + t.state == "Running" ) + const plotData: Partial[] = FilteredTrials.map((trial) => { + const values = trial.intermediate_values.filter((iv) => iv.value !== "inf") + return { + x: values.map((iv) => iv.step), + y: values.map((iv) => iv.value), + mode: "lines+markers", + type: "scatter", + name: + trial.state !== "Running" + ? `trial #${trial.number}` + : `trial #${trial.number} (running)`, + } + }) plotly.react(plotDomId, plotData, layout) } From abb8e51b08b8e62b476ce02b2b3ac7c2928a07ef Mon Sep 17 00:00:00 2001 From: Masashi Shibata Date: Wed, 11 May 2022 10:53:09 +0900 Subject: [PATCH 3/3] Fix local variable names --- optuna_dashboard/ts/components/GraphIntermediateValues.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/optuna_dashboard/ts/components/GraphIntermediateValues.tsx b/optuna_dashboard/ts/components/GraphIntermediateValues.tsx index 5730467a..e19cf070 100644 --- a/optuna_dashboard/ts/components/GraphIntermediateValues.tsx +++ b/optuna_dashboard/ts/components/GraphIntermediateValues.tsx @@ -51,13 +51,13 @@ const plotIntermediateValue = (trials: Trial[], mode: string) => { return } - const FilteredTrials = trials.filter( + const filteredTrials = trials.filter( (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) || t.state == "Running" ) - const plotData: Partial[] = FilteredTrials.map((trial) => { + const plotData: Partial[] = filteredTrials.map((trial) => { const values = trial.intermediate_values.filter((iv) => iv.value !== "inf") return { x: values.map((iv) => iv.step),