.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/1d-deriv.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_1d-deriv.py: =========================== 1-Dimensional Derivatives =========================== .. GENERATED FROM PYTHON SOURCE LINES 6-72 .. rst-class:: sphx-glr-horizontal * .. image-sg:: /auto_examples/images/sphx_glr_1d-deriv_001.png :alt: k=1 :srcset: /auto_examples/images/sphx_glr_1d-deriv_001.png :class: sphx-glr-multi-img * .. image-sg:: /auto_examples/images/sphx_glr_1d-deriv_002.png :alt: k=1 :srcset: /auto_examples/images/sphx_glr_1d-deriv_002.png :class: sphx-glr-multi-img * .. image-sg:: /auto_examples/images/sphx_glr_1d-deriv_003.png :alt: k=2 :srcset: /auto_examples/images/sphx_glr_1d-deriv_003.png :class: sphx-glr-multi-img * .. image-sg:: /auto_examples/images/sphx_glr_1d-deriv_004.png :alt: k=2 :srcset: /auto_examples/images/sphx_glr_1d-deriv_004.png :class: sphx-glr-multi-img * .. image-sg:: /auto_examples/images/sphx_glr_1d-deriv_005.png :alt: k=3 :srcset: /auto_examples/images/sphx_glr_1d-deriv_005.png :class: sphx-glr-multi-img * .. image-sg:: /auto_examples/images/sphx_glr_1d-deriv_006.png :alt: k=3 :srcset: /auto_examples/images/sphx_glr_1d-deriv_006.png :class: sphx-glr-multi-img .. code-block:: Python :lineno-start: 7 import numpy as np import matplotlib.pyplot as plt from scipy import interpolate from scipy.stats import norm import itertools import ndsplines def sin(x_in): x = np.pi*(x_in-0.5) return np.sin(x) def cos(x_in): x = np.pi*(x_in-0.5) return np.cos(x) funcs = [sin, cos] x = np.linspace(0, 1, 9) xx = np.linspace(-.0625, 1.0625, 1024) k = 3 for degree in range(1,4): for func in funcs: fvals = func(x) truef = func(xx) if degree > 0: fig, axes = plt.subplots(3,1, constrained_layout=True) else: fig, axes = plt.subplots(2,1, constrained_layout=True) plot_sel = slice(None) plt.gca().set_prop_cycle(None) test_Bspline = interpolate.make_interp_spline(x, fvals, k=degree) splinef = test_Bspline(xx.copy(), extrapolate=True) axes[0].plot(xx, splinef, '--', lw=3.0, label='BSpline') if degree > 0: der_Bspline = test_Bspline.derivative() axes[1].plot(xx, der_Bspline(xx.copy()), '--', lw=3.0, label='BSpline') antider_Bspline = test_Bspline.antiderivative() axes[-1].plot(xx, antider_Bspline(xx.copy()), '--', lw=3.0, label='BSpline') for ax in axes: ax.set_prop_cycle(None) test_NDBspline = ndsplines.make_interp_spline(x, fvals, degrees=degree) NDsplinef = test_NDBspline(xx.copy()) axes[0].plot(xx, NDsplinef, label='ndspline' ) if degree>0: der_NDspline = test_NDBspline.derivative(0) axes[1].plot(xx, der_NDspline(xx.copy()), label='ndspline' ) antider_NDspline = test_NDBspline.antiderivative(0) axes[-1].plot(xx, antider_NDspline(xx.copy()), label='ndspline') axes[0].plot(xx, truef, 'k--', label="True " + func.__name__) axes[0].plot(x, fvals, 'ko') plt.suptitle('k=%d'%degree) axes[0].legend(loc='best') plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 1.095 seconds) .. _sphx_glr_download_auto_examples_1d-deriv.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: 1d-deriv.ipynb <1d-deriv.ipynb>` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: 1d-deriv.py <1d-deriv.py>` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: 1d-deriv.zip <1d-deriv.zip>` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_