[Matplotlib-users] Plot
Partha Sinha
pnsinha68 at gmail.com
Sun Aug 4 11:53:24 EDT 2019
Awesome, thanks!
partha
On Sat, 3 Aug 2019 at 13:17, Scott Lasley <selasley at icloud.com> wrote:
> This should do what you want. It works in a jupyter notebook but not in
> jupyterlab. It also works as a standalone python script if you comment out
> the %matplotlib notebook line.
>
> Best regards,
> Scott
>
>
>
> # based on
> https://matplotlib.org/gallery/animation/animate_decay.html#sphx-glr-gallery-animation-animate-decay-py
> # but uses a zip iterator for the frames variable in FuncAnimation instead
> of the data_gen generator function
> # used in the example
>
> # comment out this line if you are not running this in a jupyter notebook
> %matplotlib notebook
> # %matplotlib nbagg
>
> import numpy as np
> from matplotlib import pyplot as plt
> from matplotlib.animation import FuncAnimation
>
>
> def init_plot():
> # if you know the data ranges you can set fixed
> # xlim and ylim limits here, otherwise uncomment
> # the ax.relim and ax.autoscale_view calls in
> # draw_pts to rescale the axes based on the
> # last data point plotted
> ax.set(xlim=[0, 11], ylim=[0, 120])
> return []
>
>
> def update_pts(data):
> x.append(data[0])
> y.append(data[1])
> pts.set_data(x, y)
> # ax.relim()
> # ax.autoscale_view(scaley=True)
> return [pts]
>
>
> # data to plot. replace with your data values
> xvals = np.arange(1, 11)
> yvals = np.array([1, 4, 9, 16, 25, 36, 49, 64, 81, 100])
>
> # zip xvals[1:] and yvals[1:] since we are plotting
> # xvals[0], yvals[0] at time 0 after we create the figure
> xy_points = zip(xvals[1:], yvals[1:])
>
> # create x and y lists containing the first point to be plotted.
> # update_pts will append the next x and y values from the iterator
> xy_points
> # to x and y every 5000ms and update the pts being plotted
> x = [xvals[0]]
> y = [yvals[0]]
>
> # create a figure and plot the first x, y point at time 0
> fig, ax = plt.subplots()
> pts = ax.plot(x, y, 'o')[0]
>
> # loop through the remaining points and update the plot every
> # 5000ms
> anim = FuncAnimation(fig=fig,
> func=update_pts,
> frames=xy_points,
> init_func=init_plot,
> interval=5000,
> blit=False,
> repeat=False)
>
> plt.show()
>
>
>
> > On Aug 3, 2019, at 1:04 AM, Partha Sinha <pnsinha68 at gmail.com> wrote:
> >
> > I want to plot a list of 10 numbers. I want to plot each point after 5
> secs (first point in o sec and 2nd point after 5 sec anf so on) and want to
> plot them in same graph.
> > How to do?
> > Regards
> > Parth
> > _______________________________________________
> > Matplotlib-users mailing list
> > Matplotlib-users at python.org
> > https://mail.python.org/mailman/listinfo/matplotlib-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-users/attachments/20190804/dff54281/attachment.html>
More information about the Matplotlib-users
mailing list