(self, exps, spec)
| 229 | fig.suptitle(spec.suptitle) |
| 230 | |
| 231 | def plot_eigenvalues(self, exps, spec): |
| 232 | |
| 233 | logs = [exps[e].runs[spec.sequence].log for e in spec.experiments] |
| 234 | names = [exps[e].display_name for e in spec.experiments] |
| 235 | |
| 236 | num_plots = 1 |
| 237 | |
| 238 | if spec.figsize is None: |
| 239 | spec.figsize = [5.2, 2 * num_plots] |
| 240 | |
| 241 | fig, axs = plt.subplots(num_plots, 1, figsize=spec.figsize) |
| 242 | |
| 243 | ax = axs |
| 244 | |
| 245 | for i, (log, name) in enumerate(zip(logs, names)): |
| 246 | if log is not None: |
| 247 | min_ev = [np.min(e) for e in log.sums.marg_ev[1:]] |
| 248 | #ax.plot(min_ev, ":", label=name, color=default_colors[i]) |
| 249 | ax.plot(min_ev, default_lines[i], label=name, color=default_colors[i]) |
| 250 | |
| 251 | ax.set_yscale("symlog", linthresh=1e-8) |
| 252 | ax.legend(loc=spec.legend_loc) |
| 253 | |
| 254 | #ax.set_title("smallest eigenvalue {} {}".format(name, spec.sequence)) |
| 255 | |
| 256 | if spec.sequence == "eurocMH01": |
| 257 | ax.set_xticks([i * 1000 for i in range(4)]) |
| 258 | ax.xaxis.set_minor_locator(matplotlib.ticker.FixedLocator([i * 1000 + 500 for i in range(4)])) |
| 259 | |
| 260 | if spec.sequence == "kitti10": |
| 261 | ax.set_xticks([i * 100 for i in range(4)]) |
| 262 | ax.xaxis.set_minor_locator(matplotlib.ticker.FixedLocator([i * 100 + 50 for i in range(4)])) |
| 263 | |
| 264 | ax.set_yticks([-1e4, -1e-4, 0.0, 1e-4, 1e4]) |
| 265 | ax.set_ylim(bottom=-1e8, top=1e8) |
| 266 | # ax.yaxis.tick_right() |
| 267 | ax.set_ylabel("$\\sigma_{min}$", rotation=0) |
| 268 | ax.yaxis.set_label_coords(0, 1.05) |
| 269 | |
| 270 | if spec.ylim.top is not None: |
| 271 | ax.set_ylim(top=spec.ylim.top) |
| 272 | if spec.ylim.bottom is not None: |
| 273 | ax.set_ylim(bottom=spec.ylim.bottom) |
| 274 | |
| 275 | if spec.suptitle: |
| 276 | fig.suptitle(spec.suptitle) |
| 277 | |
| 278 | def plot_trajectory(self, exps, spec): |
| 279 |
nothing calls this directly
no outgoing calls
no test coverage detected