如何在 Matplotlib 中使用 cycler 属性绘制多色循环图
Matplotlib 为所有图形和绘图提供了一个默认的颜色循环,但是,为了绘制具有多个颜色循环的绘图,我们可以使用 Matplotlib 的 **cycler** **属性**。它用于为轴绘制重复的模式。
首先,我们将使用面向对象的 API(例如 **pyplot**)来绘制特定的可视化效果。
from cycler import cycler import numpy as np from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas from matplotlib.figure import Figure from IPython.core.display import display
在此示例中,我们将创建两个对象,它们将在每四个对象后重复循环。因此,在创建两个对象后,最后两个将是前两个对象的重复。
fig = Figure() FigureCanvas(fig)
设置轴的 facecolor、alpha 和 edgecolor,
fig.set(facecolor='grey', alpha=0.2, edgecolor='m') ax = fig.add_subplot(111)
设置绘制图形的数据,
x = np.array([0.4, 0.8, 1.2, 1.6, 2.0]) y = [1, 6, 6, 1, 0]
现在为颜色和阴影属性定义自定义循环器,并将其设置为轴,
custom_cycler = cycler('color', ['g', 'blue', 'y', 'c']) + \ cycler('hatch', ['+*', 'xx', '+x', '+O.']) ax.set_prop_cycle(custom_cycler)
绘制六个对象的图形,
ax.fill(x+1, y) ax.fill(x+2, y) ax.fill(x+3, y) ax.fill(x+4, y) ax.fill(x+5, y) ax.fill(x+6, y)
显示绘图,
display(fig)
输出
广告