plot_cost_histories
qctrlvisualizer.plot_cost_histories(cost_histories, labels=None, y_axis_log=False, initial_iteration=1, *, figure=None)
Create a plot of the cost against iterations for either a single cost history or a set of cost histories.
Parameters
- cost_histories (list) – The values of the cost histories.
Must be either a list of a single cost history or a list of several cost histories,
where each individual cost history is a list.
For example, a single cost history can be passed
(
cost_histories = [0.1, 0.05, 0.02]
) or multiple cost histories (cost_histories = [[0.1, 0.05, 0.02], [0.23, 0.2, 0.14, 0.1, 0.04, 0.015]]
). - labels (list [ str ] or None , optional) – The labels corresponding to the individual cost histories in cost_histories. If you provide this, it must be the same length as cost_histories.
- y_axis_log (bool , optional) – Whether the y-axis is log-scale. Defaults to False.
- initial_iteration (int , optional) – Where the iteration count on the x-axis starts from. This is useful if you want to include the initial cost—before optimization—at iteration 0 or if you pass cost histories that start at a later iteration. Defaults to 1.
- figure (matplotlib.figure.Figure or None , optional) – A matplotlib Figure in which to place the plots. If passed, its dimensions and axes will be overridden.
Examples
Compare the cost histories of two closed-loop optimizers.
from qctrlvisualizer import plot_cost_histories
cost_histories = [
[0.1, 0.05, 0.02, 0.015, 0.009, 0.006, 0.004, 0.001],
[0.23, 0.2, 0.14, 0.08, 0.04, 0.025, 0.015, 0.01, 0.008, 0.005, 0.004, 0.002, 0.001],
]
plot_cost_histories(
cost_histories=cost_histories, labels=["CMA-ES", "Simulated annealing"]
)