假设我同时有 2 个 Matplotlib 图形在 for 循环中更新。其中一个图形(假设fig0
有图像,而fig1
是线图(。我希望fig0
拥有标准的 Matplotlib 风格,而fig1
我想为fig1
设置plt.style.use('ggplot')
。
到目前为止,我已经尝试过这个:
plt.style.use('ggplot')
fig0 = plt.figure(0)
fig1 = plt.figure(1)
for i in range(10):
# print stuff in both figures
但这在两个图中都设置了ggplot
风格(正如预期的那样(。我找不到在每个图中单独设置样式的方法。
这将解决它,除了循环。
import matplotlib.pyplot as plt
with plt.style.context('ggplot'):
plt.figure(0)
plt.plot([3,2,1])
with plt.style.context('default'):
plt.figure(1)
plt.plot([1,2,3])
plt.show()
无论如何,如果没有循环,您可能会更好...只要出于某种原因,循环不是绝对必要的。只需将要添加到循环图中的任何内容保留在列表中,然后修改上面的示例即可。