是否有内置的方法来绘制对称函数?

时间:2015-04-14 15:57:12

标签: python matplotlib

我正在绘制对称函数(奇数/偶数),因此我必须执行以下操作:

plt.plot(np.concatenate([-x[::-1],x]),np.concatenate([y[::-1],y]))

有没有更简单的方法来做到这一点,所以我不得不浪费更少的记忆?

1 个答案:

答案 0 :(得分:1)

为什么不直接绘制两条线:

def plot_odd(x,y, *args, **kwargs):
    plt.plot(x,y,*args,**kwargs)
    plt.plot(-x[::-1], -y[::-1], *args, **kwargs)

def plot_even(x,y, *args, **kwargs):
    plt.plot(x,y,*args,**kwargs)
    plt.plot(-x[::-1], y[::-1], *args, **kwargs)

x = np.linspace(0,6,100)
plot_odd(x, np.sin(x), 'b')
plot_even(x, np.cos(x), 'r')
plt.show()