Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #17954

Re: Plot seems weird

From Lie Ryan <lie.1296@gmail.com>
Subject Re: Plot seems weird
Date 2011-12-26 20:28 +1100
References <880a2ed3-1a3f-45e7-b439-e87289403fd9@t16g2000vba.googlegroups.com> <c1ae9905-da26-4513-a456-99941ac53036@dp8g2000vbb.googlegroups.com> <4f709686-4b07-4096-a87c-3e4bf8571c73@v13g2000yqc.googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.4099.1324891710.27778.python-list@python.org> (permalink)

Show all headers | View raw


On 12/26/2011 05:27 AM, Yigit Turgut wrote:
> On Dec 25, 7:06 pm, Rick Johnson<rantingrickjohn...@gmail.com>  wrote:
>> On Dec 25, 9:33 am, Yigit Turgut<y.tur...@gmail.com>  wrote:
>>> Hi all,
>>
>>> I have a text file as following;
>>
>>> 0.200047        0.000000
>>> 0.200053        0.160000
>>> 0.200059        0.000000
>>> 0.200065        0.080000
>>> 0.200072        0.000000
>>> 0.200078        0.160000
>>
>>> And I am trying to plot it with ;
>>
>>> filenames = sys.argv[1:]
>>> if len(filenames) == 0:
>>>      filenames = [sys.stdin]
>>> for filename in filenames:
>>>      t,y1 = numpy.genfromtxt(filename, unpack=True)
>>>      pyplot.plot(t,y1)
>>>      pyplot.show()
>>
>>> But graph seems weird, not as it supposed to be. Any ideas ?
>>
>> Interesting. Of course "weird" leaves a LOT to be desired. On a scale
>> of 1-10, how "weird" is the result?
>
> I apply a 1Khz test signal just to see if things run smoothly, but I
> see spikes at lower and higher ends (logic 0,1) where I should see a
> clean rectangle pwm signal. By the look of it I say weirdness is
> around 3/10.

What are you expecting? Your data produces something that looks like the 
plot on the right of this screenshot 
(http://i44.tinypic.com/wwhlvp.jpg), I don't see anything weird with 
that; if you are expecting a square-wave-like plot (like on the left), 
then you should use a square-wave-like data, pyplot wouldn't magically 
transform a spiked-plot to squared-plot.

Here's what I use to convert the data on right plot to data on left 
plot, I don't know much about numpy so it might be possible to do it 
more efficiently or numpy might even have something like it already.

from itertools import izip_longest
def to_square(t, y1):
     sq_data = [[], []]
     for x,y, xn in izip_longest(data[0], data[1], data[0][1:]):
         sq_data[0].append(x)
         sq_data[1].append(y)
         sq_data[0].append(xn)
         sq_data[1].append(y)
     return numpy.array(sq_data, dtype=float)

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Plot seems weird Yigit Turgut <y.turgut@gmail.com> - 2011-12-25 07:33 -0800
  Re: Plot seems weird Rick Johnson <rantingrickjohnson@gmail.com> - 2011-12-25 09:06 -0800
    Re: Plot seems weird Yigit Turgut <y.turgut@gmail.com> - 2011-12-25 10:27 -0800
      Re: Plot seems weird Lie Ryan <lie.1296@gmail.com> - 2011-12-26 20:28 +1100
        Re: Plot seems weird Yigit Turgut <y.turgut@gmail.com> - 2011-12-26 09:08 -0800
          Re: Plot seems weird Lie Ryan <lie.1296@gmail.com> - 2011-12-27 05:58 +1100
            Re: Plot seems weird Yigit Turgut <y.turgut@gmail.com> - 2011-12-26 11:14 -0800
              Re: Plot seems weird Lie Ryan <lie.1296@gmail.com> - 2011-12-27 21:54 +1100

csiph-web