In [1]:
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
import math
import ipywidgets as widgets

def exponencialTaylor(x, numIteraciones):
    aprox = 0.0
    for i in range(numIteraciones):
        aprox+=math.pow(x-0,i)/math.factorial(i)
    return aprox
    
noIteraciones_slider = widgets.IntSlider(4, 1, 20)
noPuntos_slider = widgets.IntSlider(10, 1, 100)
@widgets.interact(numIteraciones=noIteraciones_slider, noPuntos=noPuntos_slider)
def aproxExponencial(numIteraciones, noPuntos):
    x = np.linspace(0,4,noPuntos)
    width = 12
    height = 12
    plt.figure(figsize=(width, height))
    plt.plot(x, np.exp(x))
    for iteracion in range(numIteraciones):
        y = [exponencialTaylor(punto, iteracion) for punto in x]
        plt.plot(x, y)