我有两个带数据的numpy数组,比如x,y
,我应用plt.step()
并得到它的连续(阶跃)曲线
我希望能够自己创建这个函数,这意味着我希望对x
的y
值有一个(零阶保持)阶跃近似值,该值实际上不存在于原始x
数组中
例如,在以下链接中,我希望得到“新”的实际矩形正弦值,而不仅仅是打印:
https://matplotlib.org/gallery/lines_bars_and_markers/step_demo.html#sphx-glr-gallery-lines-bars-and-markers-step-demo-py
Tags:
您可以使用scipy的interp1d创建一个step函数。默认插值为“线性”,但对于阶跃函数,可以将其更改为“下一步”、“上一步”或“最近”
从
step_fun = interp1d(x, y, kind='previous')
获得一个标准步骤函数,然后将其称为step_fun(new_x)
以下代码比较了不同类型的“插值”:
您可以根据需要选择勾号值和相应的函数值。这是一个不等距参数及其值的示例:
备注:这两个数组的大小必须相等。如果您想要自己的自定义函数,可以使用
np.vectorise
:相关问题 更多 >
编程相关推荐