Skip to content

Note

Click here to download the full example code

Relative Economic Value Plot

What it's for: The Relative Economic Value plot (also known as the Richardson plot) assesses the practical utility of a forecast system for a user who must make a decision based on a cost-loss ratio.

When to use: Use this to move beyond purely statistical metrics and communicate the "value" of a model to stakeholders. It helps answer whether using the model's forecasts is better than simply relying on climatology or always taking a protective action.

How to read: * X-axis: The Cost/Loss (C/L) ratio of the user. This represents the cost of taking action divided by the loss incurred if an event happens and no action was taken. * Y-axis: Relative Economic Value (V). * The Curve: Shows the value for each possible cost-loss ratio. * Interpretation: A value of 1 represents a perfect forecast. A value of 0 means the forecast is no more valuable than simply using climatology. The highest point on the curve indicates the cost-loss ratio for which the forecast system is most beneficial.

Relative Economic Value of a Forecast System

import matplotlib.pyplot as plt
import pandas as pd

from monet_plots.plots.rev import RelativeEconomicValuePlot

# 1. Prepare sample data with contingency table counts
# These counts represent the performance of a forecast system over many events
data = {
    "hits": [100],
    "misses": [20],
    "fa": [30],  # False Alarms
    "cn": [850],  # Correct Negatives
}
df = pd.DataFrame(data)

# Define the columns for hits, misses, false alarms, and correct negatives
contingency_cols = ["hits", "misses", "fa", "cn"]

# 2. Initialize and create the plot
plot = RelativeEconomicValuePlot(figsize=(10, 7))
plot.plot(df, counts_cols=contingency_cols, color="blue", linewidth=2)

# 3. Add titles and labels
plot.ax.set_title("Relative Economic Value of a Forecast System")
plot.ax.legend(loc="lower right")

plt.tight_layout()
plt.show()

Total running time of the script: ( 0 minutes 0.379 seconds)

Download Python source code: plot_rev.py

Download Jupyter notebook: plot_rev.ipynb

Gallery generated by mkdocs-gallery