arrays - plot multiple y values against one x values in python -


here y values:

[1.00,  [(1.99-2.27e-17j),(0.61+9.08e-17j), (0.12-0j)],  [(1.9+4.54e-17j), (0.61-9.081e-17j), (0.12+4.54e-17j)],  [(1.99+4.5e-17j), (0.61-9.08e-17j), (0.12+4.54e-17j)],  [(1.99-2.27e-17j), (0.61+9.0e-17j), (0.12-0j)],  3.00] 

and here x values:

array([ 0. ,  0.2,  0.4,  0.6,  0.8,  1. ]) 

as can see, first , last x values correspond 1 y value , rest of x values correspond multiple y values. how plot real part of y values against x ?

here solution might you. note isn't efficient (especially problem bigger datasets), might put on right track. main issue dimensionality between xs , ys not same.

from numpy import * matplotlib import pyplot plt  ys = [1.00,  [(1.99-2.27e-17j),(0.61+9.08e-17j), (0.12-0j)],  [(1.9+4.54e-17j), (0.61-9.081e-17j), (0.12+4.54e-17j)],  [(1.99+4.5e-17j), (0.61-9.08e-17j), (0.12+4.54e-17j)],  [(1.99-2.27e-17j), (0.61+9.0e-17j), (0.12-0j)],  3.00]  xs = array([ 0. ,  0.2,  0.4,  0.6,  0.8,  1. ])  pxs = [] pys = [] i, yelems in enumerate(ys):     x = xs[i]     try:         yelem in yelems:             pxs.append(x)             pys.append(yelem.real)     except typeerror:         pxs.append(x)         pys.append(yelems)  plt.plot(pxs, pys) plt.show() 

as can see create 2 (one-dimensional) lists re-use respective x value needed pxs , pys have same length. typeerror raised when trying iterate on float in inner for loop, i.e. when yelems 1 element instead of list.

i assumed want real part of yelems if there multiple values (yelems list rather float) 1 x.

update:

regarding question below whether data can "plotted directly", have never used data matplotlib y dimensions vary across x range.

depending on want achieve, might able clean code being smart ys entries (i.e. make ones @ end lists rather floats consistency) and/or use list comprehensions and/or tricks zip more "compact" feel call plot.

if @ possible, try , input data straight on possible avoid need such re-arrangements of entries.


Comments

Popular posts from this blog

c# - Binding a comma separated list to a List<int> in asp.net web api -

Delphi 7 and decode UTF-8 base64 -

html - Is there any way to exclude a single element from the style? (Bootstrap) -