On Sat, Sep 17, 2011 at 3:09 PM, Eric Firing <efir...@hawaii.edu> wrote:
> On 09/17/2011 09:57 AM, Klonuo Umom wrote:
>> Hi,
>> please consider this snippet:
>>
>> import matplotlib.pyplot as plt
>>
>> d={}
>> for i in range(1,21):
>>    d[i] = i**2
>>
>> plt.plot(d.values())
>
> This is plotting values against the zero-based index.  What you want is
>
> plt.plot(d.keys(), d.values())

While this is safe because calls to keys and values will return lists
in congruent order of no intervening dict modifications are made

http://stackoverflow.com/questions/835092/python-dictionary-are-keys-and-values-always-the-same-order

it is a bit fragile because there is no guarantee the dict keys will
be ordered, right, which is probably not what the OP wants.  Maybe

  x = sorted(d.keys())
  y = [d[k] for k in x]
  plot(x, y)

JDH

------------------------------------------------------------------------------
BlackBerry&reg; DevCon Americas, Oct. 18-20, San Francisco, CA
http://p.sf.net/sfu/rim-devcon-copy2
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to