Вы можете создать логический массив, чтобы указать, какую часть рисовать.
Вот пример, предполагающий, что вы используете pandas даты. Когда <=
и >=
используются с датой, которая является частью оси X, строка будет продолжена. В противном случае линия будет иметь небольшое прерывание.
from matplotlib import pyplot as plt
import pandas as pd
import numpy as np
t = pd.date_range('2015', '2021', freq='M')
sales = np.random.normal(100, 500, len(t) ).cumsum() + 10000
past = t <= '2020-02-29'
future = t >= '2020-02-29'
plt.plot(t[past], sales[past], color='dodgerblue')
plt.plot(t[future], sales[future], color='crimson')
plt.fill_between(t[future], sales[future] - 1000, sales[future] + 1000, color='crimson', alpha=0.3)
plt.ylabel('sales')
plt.show()
![resulting plot](https://i.stack.imgur.com/apzyJ.png)