По сути, вам нужно использовать многоугольник вместо линии.В качестве быстрого примера:
import numpy as np
import matplotlib.pyplot as plt
# Make the original line...
x = np.linspace(0, 10, 100)
y = 2 * x
thickness = 0.5 * np.abs(np.sin(x) * np.cos(x))
plt.fill_between(x, y - thickness, y + thickness, color='blue')
plt.show()
Или, если вы хотите что-то ближе к вашему описанию:
import numpy as np
import matplotlib.pyplot as plt
# Make the original line...
x = np.linspace(0, 10, 100)
y = np.cos(x)
thickness = 0.01 * x
plt.fill_between(x, y - thickness, y + thickness, color='blue')
plt.show()