From b95b8c81c82e6acc2391a67c99389f87eb82d5ee Mon Sep 17 00:00:00 2001 From: c-bata Date: Wed, 7 Apr 2021 13:20:39 +0900 Subject: [PATCH 1/2] Fix a bug to crash when trials are pruned with no intermediate values --- optuna_dashboard/static/components/GraphHistory.tsx | 2 +- optuna_dashboard/static/components/GraphIntermediateValues.tsx | 2 +- optuna_dashboard/static/components/GraphParallelCoordinate.tsx | 2 +- optuna_dashboard/static/components/GraphParetoFront.tsx | 2 +- optuna_dashboard/static/components/GraphSlice.tsx | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/optuna_dashboard/static/components/GraphHistory.tsx b/optuna_dashboard/static/components/GraphHistory.tsx index f3d121e0..d55a32e0 100644 --- a/optuna_dashboard/static/components/GraphHistory.tsx +++ b/optuna_dashboard/static/components/GraphHistory.tsx @@ -187,7 +187,7 @@ const plotHistory = ( } let filteredTrials = study.trials.filter( - (t) => t.state === "Complete" || t.state === "Pruned" + (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) ) if (filterCompleteTrial) { filteredTrials = filteredTrials.filter((t) => t.state !== "Complete") diff --git a/optuna_dashboard/static/components/GraphIntermediateValues.tsx b/optuna_dashboard/static/components/GraphIntermediateValues.tsx index 227d7434..272a17af 100644 --- a/optuna_dashboard/static/components/GraphIntermediateValues.tsx +++ b/optuna_dashboard/static/components/GraphIntermediateValues.tsx @@ -31,7 +31,7 @@ const plotIntermediateValue = (trials: Trial[]) => { } const filteredTrials = trials.filter( - (t) => t.state === "Complete" || t.state === "Pruned" + (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) ) const plotData: Partial[] = filteredTrials.map((trial) => { return { diff --git a/optuna_dashboard/static/components/GraphParallelCoordinate.tsx b/optuna_dashboard/static/components/GraphParallelCoordinate.tsx index 9b4959ce..7d0c3893 100644 --- a/optuna_dashboard/static/components/GraphParallelCoordinate.tsx +++ b/optuna_dashboard/static/components/GraphParallelCoordinate.tsx @@ -32,7 +32,7 @@ const plotCoordinate = (trials: Trial[], objectiveId: number) => { } const filteredTrials = trials.filter( - (t) => t.state === "Complete" || t.state === "Pruned" + (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) ) // Intersection param names diff --git a/optuna_dashboard/static/components/GraphParetoFront.tsx b/optuna_dashboard/static/components/GraphParetoFront.tsx index e0d4491b..b2d861d0 100644 --- a/optuna_dashboard/static/components/GraphParetoFront.tsx +++ b/optuna_dashboard/static/components/GraphParetoFront.tsx @@ -103,7 +103,7 @@ const plotParetoFront = ( }, } - const trials: Trial[] = study !== null ? study.trials : [] + const trials: Trial[] = study ? study.trials : [] const completedTrials = trials.filter((t) => t.state === "Complete") if (completedTrials.length === 0) { diff --git a/optuna_dashboard/static/components/GraphSlice.tsx b/optuna_dashboard/static/components/GraphSlice.tsx index a7ce3bfc..7c53f6e4 100644 --- a/optuna_dashboard/static/components/GraphSlice.tsx +++ b/optuna_dashboard/static/components/GraphSlice.tsx @@ -140,7 +140,7 @@ const plotSlice = ( const filteredTrials = trials.filter( (t) => - (t.state === "Complete" || t.state === "Pruned") && + (t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0)) && t.params.find((p) => p.name == selected) !== undefined ) From c0f700f5941c2564543269bbf57b8c4fd3242ec4 Mon Sep 17 00:00:00 2001 From: c-bata Date: Wed, 7 Apr 2021 13:23:18 +0900 Subject: [PATCH 2/2] Run prettier --- optuna_dashboard/static/components/GraphHistory.tsx | 4 +++- .../static/components/GraphIntermediateValues.tsx | 4 +++- .../static/components/GraphParallelCoordinate.tsx | 4 +++- optuna_dashboard/static/components/GraphSlice.tsx | 3 ++- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/optuna_dashboard/static/components/GraphHistory.tsx b/optuna_dashboard/static/components/GraphHistory.tsx index d55a32e0..1a5447d7 100644 --- a/optuna_dashboard/static/components/GraphHistory.tsx +++ b/optuna_dashboard/static/components/GraphHistory.tsx @@ -187,7 +187,9 @@ const plotHistory = ( } let filteredTrials = study.trials.filter( - (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) + (t) => + t.state === "Complete" || + (t.state === "Pruned" && t.values && t.values.length > 0) ) if (filterCompleteTrial) { filteredTrials = filteredTrials.filter((t) => t.state !== "Complete") diff --git a/optuna_dashboard/static/components/GraphIntermediateValues.tsx b/optuna_dashboard/static/components/GraphIntermediateValues.tsx index 272a17af..e54b601a 100644 --- a/optuna_dashboard/static/components/GraphIntermediateValues.tsx +++ b/optuna_dashboard/static/components/GraphIntermediateValues.tsx @@ -31,7 +31,9 @@ const plotIntermediateValue = (trials: Trial[]) => { } const filteredTrials = trials.filter( - (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) + (t) => + t.state === "Complete" || + (t.state === "Pruned" && t.values && t.values.length > 0) ) const plotData: Partial[] = filteredTrials.map((trial) => { return { diff --git a/optuna_dashboard/static/components/GraphParallelCoordinate.tsx b/optuna_dashboard/static/components/GraphParallelCoordinate.tsx index 7d0c3893..33c79961 100644 --- a/optuna_dashboard/static/components/GraphParallelCoordinate.tsx +++ b/optuna_dashboard/static/components/GraphParallelCoordinate.tsx @@ -32,7 +32,9 @@ const plotCoordinate = (trials: Trial[], objectiveId: number) => { } const filteredTrials = trials.filter( - (t) => t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0) + (t) => + t.state === "Complete" || + (t.state === "Pruned" && t.values && t.values.length > 0) ) // Intersection param names diff --git a/optuna_dashboard/static/components/GraphSlice.tsx b/optuna_dashboard/static/components/GraphSlice.tsx index 7c53f6e4..87320156 100644 --- a/optuna_dashboard/static/components/GraphSlice.tsx +++ b/optuna_dashboard/static/components/GraphSlice.tsx @@ -140,7 +140,8 @@ const plotSlice = ( const filteredTrials = trials.filter( (t) => - (t.state === "Complete" || (t.state === "Pruned" && t.values && t.values.length > 0)) && + (t.state === "Complete" || + (t.state === "Pruned" && t.values && t.values.length > 0)) && t.params.find((p) => p.name == selected) !== undefined )