On Tue, Feb 1, 2011 at 1:11 PM, Benjamin Root <ben.r...@ou.edu> wrote:
>
>
> On Tue, Feb 1, 2011 at 1:48 PM, Jeremy Conlin <jlcon...@gmail.com> wrote:
>>
>> On Tue, Feb 1, 2011 at 11:22 AM, Benjamin Root <ben.r...@ou.edu> wrote:
>> >
>> >
>> > On Tue, Feb 1, 2011 at 11:58 AM, Jeremy Conlin <jlcon...@gmail.com>
>> > wrote:
>> >>
>> >> I have two arrays and I want to plot the ratio of A/B when A>=B or B/A
>> >> when A<B.  I can create numpy masked arrays to find the result in
>> >> these two instances, but I'm having trouble plotting them.  Below I
>> >> have a minimal example.  I get a plot, but only from the second time I
>> >> issue the pcolormesh command.  Is there a way to combine the two
>> >> arrays for plotting or to plot without overlapping?
>> >>
>> >> Thanks,
>> >> Jeremy
>> >>
>> >>
>> >
>> > Try this:
>> >
>> > ratio = numpy.where(A >= B, A/B, B/A)
>> > Figure = pyplot.figure()
>> > pyplot.pcolormesh(ratio)
>> >
>> > I hope that helps!
>>
>> numpy.where helps a lot.  To further complicate things, some elements
>> of A or B are zero which causes A/B or B/A to be infinite in some
>> places.  I can use numpy.where or create a masked array to elimnate
>> those elements that are infinite, but then my plotted values are
>> either 0 or 1 (False or True); I lose all the interesting data.  The
>> documents of pcolormesh show that I can pass a masked_array, but I'm
>> successful in doing that.  Do you have another trick you can show to
>> help me get around this problem?
>>
>> Thanks again,
>> Jeremy
>
>
> I think you are using the masked array and/or the np.where incorrectly.
>
> ratio = np.where(A >= B, A/B, B/A)
> ratio = np.ma.masked_array(ratio, mask=(~np.isfinite(ratio)))
>
> And then do a contourf on ratio.

Yeah, that seems to work.  Thanks for the help.
Jeremy

------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires 
February 28th, so secure your free ArcSight Logger TODAY! 
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to