我正在使用几个子图。在这些子图中,使用imshow
绘制数据。我传递给imshow
的选项对于几乎所有的子图都是相同的。但是,由于选项的长度,它们会污染我的代码。
我使用的选项包括:
extent
cmap
norm
origin
interpolation
为了更好地概述我的代码,我想定义一次选项并为每个子图调用它们。什么是pythonic方法呢?
答案 0 :(得分:3)
您可以将选项存储在字典中,然后使用**kwargs
operator在函数调用中将其解压缩,如下所示(示例使用plot
而不是imshow
,但这是相同的想法)
import matplotlib.pyplot as plt
import numpy as np
options = {'linewidth':2,
'color':'red',
'linestyle':'dashed'}
x = np.linspace(0,10,100)
y = x**2
fig, ax = plt.subplots()
ax.plot(x,y, **options)
plt.show()
上面我已将选项存储在options
字典中,然后使用ax.plot(x,y, **options)
在情节函数调用中解压缩它们。