|
84 | 84 | large_errors = df_each_err[model].abs().nlargest(n_structs)
|
85 | 85 | small_errors = df_each_err[model].abs().nsmallest(n_structs)
|
86 | 86 | for label, errors in zip(("min", "max"), (large_errors, small_errors)):
|
87 |
| - scatter = go.Histogram( |
| 87 | + fig.add_histogram( |
88 | 88 | x=df_wbm.loc[errors.index][fp_diff_col].values,
|
89 | 89 | name=f"{model} err<sub>{label}</sub>",
|
90 | 90 | visible="legendonly" if idx else True,
|
91 | 91 | legendgroup=model,
|
92 | 92 | hovertemplate=("SSFP diff: %{x:.2f}<br>Count: %{y}"),
|
93 | 93 | )
|
94 |
| - fig.add_trace(scatter) |
95 | 94 |
|
96 | 95 | title = (
|
97 | 96 | f"Norm-diff between initial/final SiteStatsFingerprint<br>"
|
|
121 | 120 | for idx, model in enumerate(df_metrics):
|
122 | 121 | errors = df_each_err[model].abs().nlargest(n_structs)
|
123 | 122 | model_mae = errors.mean().round(3)
|
124 |
| - scatter = go.Scatter( |
| 123 | + fig.add_scatter( |
125 | 124 | x=df_wbm.loc[errors.index][fp_diff_col].values,
|
126 | 125 | y=errors.values,
|
127 | 126 | mode="markers",
|
|
136 | 135 | customdata=df_wbm.loc[errors.index][["material_id", "formula"]].values,
|
137 | 136 | legendrank=model_mae,
|
138 | 137 | )
|
139 |
| - fig.add_trace(scatter) |
140 | 138 |
|
141 | 139 | title = (
|
142 | 140 | f"Norm-diff between initial/final SiteStatsFingerprint<br>"
|
|
246 | 244 | model_mae = df_each_err[model].loc[df_largest_fp_diff.index].abs().mean()
|
247 | 245 |
|
248 | 246 | visible = "legendonly" if idx else True
|
249 |
| - scatter = go.Scatter( |
| 247 | + fig.add_scatter( |
250 | 248 | x=df_largest_fp_diff.values,
|
251 | 249 | y=df_each_err[model].loc[df_largest_fp_diff.index].abs(),
|
252 | 250 | mode="markers",
|
|
265 | 263 | marker=dict(color=color),
|
266 | 264 | legendrank=model_mae,
|
267 | 265 | )
|
268 |
| - fig.add_trace(scatter) |
269 | 266 | # add dashed mean line for each model that toggles with the scatter plot
|
270 | 267 | # fig.add_hline(
|
271 | 268 | # y=model_mae,
|
|
357 | 354 | fig = go.Figure()
|
358 | 355 | for model in df_metrics:
|
359 | 356 | errors = getattr(df_each_err[model].abs(), which)(n_structs)
|
360 |
| - violin = go.Violin( |
| 357 | + fig.add_violin( |
361 | 358 | x=df_wbm.loc[errors.index][fp_diff_col].values,
|
362 | 359 | name=f"{model} err<sub>{label}</sub>",
|
363 | 360 | legendgroup=model,
|
364 | 361 | hovertemplate=("SSFP diff: %{x:.2f}<br>Count: %{y}"),
|
365 | 362 | spanmode="hard",
|
366 | 363 | )
|
367 |
| - fig.add_trace(violin) |
368 | 364 | fig.layout.update(showlegend=False)
|
369 | 365 | fig.layout.xaxis.title = "SSFP norm-diff before/after relaxation"
|
370 | 366 | fig.show()
|
|
0 commit comments