Python Forum
how can I create a recursive graphic with matplotlib - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: Data Science (https://python-forum.io/forum-44.html)
+--- Thread: how can I create a recursive graphic with matplotlib (/thread-14265.html)



how can I create a recursive graphic with matplotlib - royer14 - Nov-22-2018

hello to all, I am wanting to draw a graph similar to the one that will be shown in the image:
[Image: pn40p977hfmefb67g.jpg]
The question is:

  1. For the differential equations given below, solve the sequence and [n], use the program recur for
    0 <= n <= 10, and plot and against n in a stem graph.
  • y[n] = y[n-1] + u[n-1],
    y[1] = 0
I was thinking about using the following numpy libraries in matplotlib.
np.linspace
plt.stem
my problem lies in recur (), well I have information on how it works, for example

[Image: cofo8uaz8yqgaaa7g.jpg]


RE: how can I create a recursive graphic with matplotlib - Gribouillis - Nov-22-2018

Can you explain the context? Are you trying to translate a matlab book into python? Is this homework?


RE: how can I create a recursive graphic with matplotlib - royer14 - Nov-22-2018

(Nov-22-2018, 07:49 AM)Gribouillis Wrote: Can you explain the context? Are you trying to translate a matlab book into python? Is this homework?
No,rather it is a challenge that I proposed, look at something that I have been able to do.
import matplotlib.pyplot as plt
import numpy as np
#------------------
ni = 10
a = -0.5
b = np.zeros(ni+1)
n = np.arange(ni+1)
y0 = 1
x0 = 0
x = np.zeros(ni+1)
y = np.zeros(n+1)
y[0] = y0
#----------------
#for i in range(y0-1,ni+1):   --->             |perfect 0 to 10
#    y[i] = a + b[i]+ n[i] + x[i] + x_0 + y_0  |this part I can not interpret it

#markerline, stemlines, baseline = plt.stem(x, y, '-.')
# setting property of baseline with color red and linewidth 2
#plt.setp(baseline, color='r', linewidth=2)
#plt.show()



RE: how can I create a recursive graphic with matplotlib - Gribouillis - Nov-22-2018

I think it is the first order explicit Euler method for solving ordinary differential equations. You can find implementations online, for example at Rosetta code. In your case, the mathematical function f(t, y(t)) would be y(t) + u(t).