<div dir="ltr"><div><div><div><div>Hi Ben,<br></div>             I believe have a better idea of my doubt  and I am just thinking loudly here - apologies if all of this is irrelevant. Usually when you have a raster grid  you need to define it with respect to a origin. So since in my case I have a global grid the lower left hand corner is taken to be the origin. This is usually -90 S, 180 W. But you could also have a subset of the global grid in which case the lower left corner's  latitude and longitude can be considered as the origin. This is important especially if you want to know what is grid  orientation of the contour with respect to the origin. I presume I do not need to worry about this with matplotlib's contourf  - am I correct on that or put it differently does it even matter ? <br><br></div>Looking in the code collections.py under lib/matplotlib I see some references to rasterizing a grid and affine transformations. I am not sure whether that is related to any of what I just asked.<br><br></div>Best regards,<br></div>Ashwin.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 19, 2017 at 2:38 AM, Benjamin Root <span dir="ltr"><<a href="mailto:ben.v.root@gmail.com" target="_blank">ben.v.root@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>If you passed the coordinate arrays in with the call to contourf(), then you will get what you expect.<br><br></div>I should note that you should watch out for path simplification (you'll want to turn it off). I also recommend using contourf() over contour() because it handles the edges of the domain better and NaNs.<br><br></div>Cheers!<br>Ben Root<br><br></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Wed, Oct 18, 2017 at 4:59 PM, ashwin .D <span dir="ltr"><<a href="mailto:winash12@gmail.com" target="_blank">winash12@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr"><div><div><div>Hello,<br></div>         I have data on a 2d lat lon grid(equal grid spacing) in terms of laitude and longitude and heights as enclosed in the image. I need the coordinates(in terms of latitude and longitude) of the contours( as shown in red in the image). From this answer - <a href="https://stackoverflow.com/questions/18304722/python-find-contour-lines-from-matplotlib-pyplot-contour/" target="_blank">https://stackoverflow.com/ques<wbr>tions/18304722/python-find-<wbr>contour-lines-from-matplotlib-<wbr>pyplot-contour/</a> will this give me what I am looking for or is there a scaling required to latitude and longitude that I need to include? <br><br></div>Best regards,<br></div>Ashwin. <br><div><div><pre class="m_941409479146487835m_8012991541054128659gmail-lang-py m_941409479146487835m_8012991541054128659gmail-prettyprint m_941409479146487835m_8012991541054128659gmail-prettyprinted"><code><span class="m_941409479146487835m_8012991541054128659gmail-kwd">import</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> numpy </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">as</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> np

</span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">def</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> get_contour_verts</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">(</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">cn</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">):</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
    contours </span><span class="m_941409479146487835m_8012991541054128659gmail-pun">=</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> </span><span class="m_941409479146487835m_8012991541054128659gmail-pun">[]</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
    </span><span class="m_941409479146487835m_8012991541054128659gmail-com"># for each contour line</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
    </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">for</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> cc </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">in</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> cn</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">collections</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">:</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
        paths </span><span class="m_941409479146487835m_8012991541054128659gmail-pun">=</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> </span><span class="m_941409479146487835m_8012991541054128659gmail-pun">[]</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
        </span><span class="m_941409479146487835m_8012991541054128659gmail-com"># for each separate section of the contour line</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
        </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">for</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> pp </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">in</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> cc</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">get_paths</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">():</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
            xy </span><span class="m_941409479146487835m_8012991541054128659gmail-pun">=</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> </span><span class="m_941409479146487835m_8012991541054128659gmail-pun">[]</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
            </span><span class="m_941409479146487835m_8012991541054128659gmail-com"># for each segment of that section</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
            </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">for</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> vv </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">in</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> pp</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">iter_segments</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">():</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
                xy</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">append</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">(</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">vv</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">[</span><span class="m_941409479146487835m_8012991541054128659gmail-lit">0</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">])</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
            paths</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">append</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">(</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">np</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">vstack</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">(</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">xy</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">))</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">
        contours</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">.</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">append</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">(</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">paths</span><span class="m_941409479146487835m_8012991541054128659gmail-pun">)</span><span class="m_941409479146487835m_8012991541054128659gmail-pln">

    </span><span class="m_941409479146487835m_8012991541054128659gmail-kwd">return</span><span class="m_941409479146487835m_8012991541054128659gmail-pln"> contours<br><br></span></code></pre><pre class="m_941409479146487835m_8012991541054128659gmail-lang-py m_941409479146487835m_8012991541054128659gmail-prettyprint m_941409479146487835m_8012991541054128659gmail-prettyprinted"><code><span class="m_941409479146487835m_8012991541054128659gmail-pln"><br></span></code></pre></div></div></div>
<br></div></div>______________________________<wbr>_________________<br>
Matplotlib-users mailing list<br>
<a href="mailto:Matplotlib-users@python.org" target="_blank">Matplotlib-users@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/matplotlib-users" rel="noreferrer" target="_blank">https://mail.python.org/mailma<wbr>n/listinfo/matplotlib-users</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div>