On Sun, Dec 12, 2010 at 11:51 AM, Jose Guzman <sjm.guz...@googlemail.com>wrote:
> I was wondering if there is an easy way to combine two vectors (x and y)
> into a single object to be ploted with the plot() method in matplotlib.
>
> Untill now, I did something like:
>
> import matplotlib.pyplot as plt
> x = np.nplinspace(0,5,1000)
> y = np.ones_like(x)
> plt.plot(x,y) # need an object here
> plt.show()
>
> But I would like to use plt.plot(my_object, 'r').
>
> I tried to combine x and y in lists of lists, NumPy matrices, with zip,
> etc...but it only plots a collection of plots.
>
> Thanks a lot in advance.
>
>
You could take advantage of python's expansion of positional arguments like
so:
>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> foo = [np.arange(30), np.random.random((30,))]
>>> plt.plot(*foo)
[<matplotlib.lines.Line2D object at 0x97aef6c>]
>>> plt.show()
The behavior that you describe (plotting many lines) is documented and
expected behavior with a list.
Ben Root
------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users