如何编写一个带有不同功能关键字的函数

时间:2017-10-08 22:39:01

标签: python python-2.7 matplotlib kwargs

我想编写一个简单绘制数据的函数。如何以def plot_data(x, y): plt.plot(x, y) plt.axvline(max(y)) 中的已知关键字参数的形式编写函数?例如:

colors

假设我有2个不同的数据集:我想分配不同的labels和不同的def plot_data(x, y, color=None, label=None): plt.plot(x, y, color=color, label=label) plt.axvline(max(y)) plt.plot(x1, y1, color='g', label='set1') plt.plot(x2, y2, color='k', label='set2')

我现在的做法是:

linestyle

但是如果我还要分配不同的linewidth,不同的markers,不同的keywords,....

是否有一种巧妙的方法可以将这些def plot_data(x, y, color=None, label=None, ls=None, lw=None, marker=None): plt.plot(x, y, color=color, label=label, ls=ls, lw=lw, marker=marker) plt.axvline(max(y)) 传递给函数而不是仅仅将它们全部写入?

def plot_data(x, y, **kwargs):
    plt.plot(x, y, **kwargs)
    plt.axvline(max(y)) 

我可以想象:

{{1}}

0 个答案:

没有答案