<div dir="ltr"><div>Dipu,</div><div><br></div><a href="http://matplotlib.org/">http://matplotlib.org/</a> has both a gallery if images (click the image to see the source code) and a broad, organized list of examples. <br><div><br></div><div>I'd start there.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Aug 19, 2016 at 7:58 AM, Dipankar “Dipu” Ganguly <span dir="ltr"><<a href="mailto:dipugee@gmail.com" target="_blank">dipugee@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 style="word-wrap:break-word">Hi:<div><br></div><div>I am trying to learn the basics of plotting in matplotlib. My immediate need is for displaying grayscale images with titles, axis labels & ticks and  within-image annotations. Where can I get good tutorials/demos for such things?</div><div><br></div><div>Thanks.</div><div><br></div><div>Dipu</div><span class="HOEnZb"><font color="#888888"><div><br></div><div><br></div></font></span><div><span class="HOEnZb"><font color="#888888"><div>
<div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word"><div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word"><div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word"><div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word"><div>Dipankar “Dipu” Ganguly</div><div><a href="mailto:dipugee@gmail.com" target="_blank">dipugee@gmail.com</a></div><div>Cell: <a href="tel:408-203-8814" value="+14082038814" target="_blank">408-203-8814</a></div><div><br></div></div><br></div><br></div><br></div><br><br>
</div></font></span><div><div class="h5">
<br><div><blockquote type="cite"><div>On Aug 19, 2016, at 4:31 AM, <<a href="mailto:juhaszp95@gmail.com" target="_blank">juhaszp95@gmail.com</a>> <<a href="mailto:juhaszp95@gmail.com" target="_blank">juhaszp95@gmail.com</a>> wrote:</div><br><div><div style="font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif">Hi Jens,<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif"><u></u> <u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif">Thanks very much! This indeed works. I thought PyPlot automatically detects if the data is along which axes, but fair, expecting it in a certain way is more consistent.<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif"><u></u> <u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif">Many thanks for your help once again!<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif"><u></u> <u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Cambria,serif">Best wishes,<br>Péter<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><a name="m_4954782760079190110__MailEndCompose"><span style="font-size:11pt;font-family:Cambria,serif"><u></u> <u></u></span></a></div><span></span><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><b><span style="font-size:11pt;font-family:Calibri,sans-serif">From:</span></b><span style="font-size:11pt;font-family:Calibri,sans-serif"><span> </span>Jens Nielsen [<a href="mailto:jenshnielsen@gmail.com" style="color:purple;text-decoration:underline" target="_blank">mailto:jenshnielsen@gmail.com</a><wbr>]<span> </span><br><b>Sent:</b><span> </span>Friday, August 19, 2016 12:32 PM<br><b>To:</b><span> </span><a href="mailto:juhaszp95@gmail.com" style="color:purple;text-decoration:underline" target="_blank">juhaszp95@gmail.com</a>;<span> </span><a href="mailto:matplotlib-users@python.org" style="color:purple;text-decoration:underline" target="_blank">matpl<wbr>otlib-users@python.org</a><br><b>Subject:</b><span> </span>Re: [Matplotlib-users] [Question] Possible bug in plotting large NumPy array<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">The problem is the way you are slicing your data <u></u><u></u></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">by doing y[:1] you are creating a 1 by 400 array. When you try to plot that you will get 400 individual line plots each with only one point. A line plot with one point is invisible since there in no other points to draw the lines between. You will not notice that with scatter since it defaults to drawing a point for each data point. If you add a marker you can see whats going on.<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">I.e. do <u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">ax1.plot(x, y[:1], 'o') <u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">in the first example and you will notice that the points color cycle as a new plot is created.<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">If you really want to slice this way you have to ensure that your data is along the first dimension.  I.e. you can do `ax1.plot(x.transpose(), y[:1].transpose())` which plots 400 by 1 arrays<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">Hope that helps<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">Jens<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div><div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">On Fri, 19 Aug 2016 at 11:10 <<a href="mailto:juhaszp95@gmail.com" style="color:purple;text-decoration:underline" target="_blank">juhaszp95@gmail.com</a>> wrote:<u></u><u></u></div></div><blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm" type="cite"><div><div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">Dear Matplotlib users,</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">I am Péter Juhász and I started experimenting with this demo:<span> </span><a href="http://matplotlib.org/examples/pylab_examples/subplots_demo.html" style="color:purple;text-decoration:underline" target="_blank">http://matplotlib.org/<wbr>examples/pylab_examples/<wbr>subplots_demo.html</a>.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">What I then tried to achieve is to let<span> </span><i>y</i><span> </span>be a NumPy array of 2 rows, the first holding sin(x**2) values, the second holding something else (I set cos(x**2)), and the make the same plots as in the original demo only by using the first row of<span> </span><i>y</i>. Unfortunately, I was quite surprised to see that pyplot/matplotlib only succeeds with this plotting if<span> </span><i>scatter plots</i><span> </span>or<span> </span><i>markers</i><span> </span>are used<span> </span><i>only</i>, instead of the usual plotting with lines. On the other hand, with some tricks in the NumPy array (some reshapes and slicing) I was able to make pyplot/matplotlib work for both scatter plots and the usual simple plots. This however possibly takes much more time, so for big datasets does not seem feasible and anyway I do not see an obvious reason why a dataset should only work with scatter plots but not the usual, simple plots.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">Please find attached my code below and I would appreciate any help/explanation, or it is indeed a bug, then if it could be raised to the developers’ attention.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">My original trial, working only with scatter plots (see for yourself! maybe it’s only my installation what is going wrong?):</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">import</span><span style="font-size:10pt;font-family:Consolas"><span> </span>matplotlib.pyplot<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue">as</span><span style="font-size:10pt;font-family:Consolas"><span> </span>pl<wbr>t</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">import</span><span style="font-size:10pt;font-family:Consolas"><span> </span>numpy<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue">as</span><span style="font-size:10pt;font-family:Consolas"><span> </span>np</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># Simple data to display in various forms</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">x = np.linspace(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* np.pi,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">400</span><span style="font-size:10pt;font-family:Consolas">).reshape(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">400</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">print</span><span style="font-size:10pt;font-family:Consolas">(x.shape)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">y = np.vstack((np.sin(x **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">), np.cos(x **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">)))</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">print</span><span style="font-size:10pt;font-family:Consolas">(y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">].shape)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">plt.close(</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'all'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># Three<span> </span><u>subplots</u><span> </span>sharing both x/y axes</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">f, (ax1, ax2, ax3) = plt.subplots(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">3</span><span style="font-size:10pt;font-family:Consolas">, sharex=</span><span style="font-size:10pt;font-family:Consolas;color:blue">True</span><span style="font-size:10pt;font-family:Consolas">, sharey=</span><span style="font-size:10pt;font-family:Consolas;color:blue">True</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.plot(x, y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">])<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:silver"># This is not showing!</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.set_title(</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'Sharing both axes'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax2.scatter(x, y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">])</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax3.scatter(x,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">] **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>-<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">, color=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'r'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># Fine-tune figure; make<span> </span><u>subplots</u><span> </span>close to each other and hide x ticks for</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># all but bottom plot.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">f.subplots_adjust(hspace=</span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">plt.setp([a.get_xticklabels()<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue"><wbr>for</span><span style="font-size:10pt;font-family:Consolas"><span> </span>a<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue">in</span><span style="font-size:10pt;font-family:Consolas"><span> </span>f.axes[:-</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">]], visible=</span><span style="font-size:10pt;font-family:Consolas;color:blue">False</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># row and column sharing</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">, sharex=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'<u>col</u>'</span></i><span style="font-size:10pt;font-family:Consolas">, sharey=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'row'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.plot(x, y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">])</span><span style="font-size:10pt;font-family:Consolas;color:silver"><span> </span># This is not showing!</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.set_title(</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'Sharing x per column, y per row'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax2.scatter(x, y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">])</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax3.scatter(x,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">] **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>-<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">, color=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'r'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax4.plot(x,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* y[:</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">] **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>-<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">, color=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'r'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><span style="font-size:10pt;font-family:Consolas;color:silver"><span> </span># This is not showing!</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">plt.show()</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">The working solution:</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">import</span><span style="font-size:10pt;font-family:Consolas"><span> </span>matplotlib.pyplot<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue">as</span><span style="font-size:10pt;font-family:Consolas"><span> </span>pl<wbr>t</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">import</span><span style="font-size:10pt;font-family:Consolas"><span> </span>numpy<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue">as</span><span style="font-size:10pt;font-family:Consolas"><span> </span>np</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># Simple data to display in various forms</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">x = np.linspace(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* np.pi,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">400</span><span style="font-size:10pt;font-family:Consolas">).reshape(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">400</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">print</span><span style="font-size:10pt;font-family:Consolas">(x.shape)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">y = np.vstack((np.sin(x **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">), np.cos(x **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">))).reshape(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">400</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:blue">print</span><span style="font-size:10pt;font-family:Consolas">(y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">].shape)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">plt.close(</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'all'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># Three<span> </span><u>subplots</u><span> </span>sharing both x/y axes</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">f, (ax1, ax2, ax3) = plt.subplots(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">3</span><span style="font-size:10pt;font-family:Consolas">, sharex=</span><span style="font-size:10pt;font-family:Consolas;color:blue">True</span><span style="font-size:10pt;font-family:Consolas">, sharey=</span><span style="font-size:10pt;font-family:Consolas;color:blue">True</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.plot(x, y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">])</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.set_title(</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'Sharing both axes'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax2.scatter(x, y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">])</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax3.scatter(x,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">] **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>-<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">, color=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'r'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># Fine-tune figure; make<span> </span><u>subplots</u><span> </span>close to each other and hide x ticks for</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># all but bottom plot.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">f.subplots_adjust(hspace=</span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">plt.setp([a.get_xticklabels()<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue"><wbr>for</span><span style="font-size:10pt;font-family:Consolas"><span> </span>a<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:blue">in</span><span style="font-size:10pt;font-family:Consolas"><span> </span>f.axes[:-</span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">]], visible=</span><span style="font-size:10pt;font-family:Consolas;color:blue">False</span><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas;color:silver"># row and column sharing</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(</span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas">, sharex=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'<u>col</u>'</span></i><span style="font-size:10pt;font-family:Consolas">, sharey=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'row'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.plot(x, y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">])</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax1.set_title(</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'Sharing x per column, y per row'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax2.scatter(x, y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">])</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax3.scatter(x,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">] **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>-<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">, color=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'r'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">ax4.plot(x,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>* y[:,<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">0</span><span style="font-size:10pt;font-family:Consolas">] **<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">2</span><span style="font-size:10pt;font-family:Consolas"><span> </span>-<span> </span></span><span style="font-size:10pt;font-family:Consolas;color:maroon">1</span><span style="font-size:10pt;font-family:Consolas">, color=</span><i><span style="font-size:10pt;font-family:Consolas;color:rgb(0,170,0)">'r'</span></i><span style="font-size:10pt;font-family:Consolas">)</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:10pt;font-family:Consolas">plt.show()</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">I did not modify anything else in the code respective to the original demo than what I mentioned. I hope you will be able to help.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">Kind regards,</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span lang="EN-GB" style="font-family:Cambria,serif">Péter</span><u></u><u></u></div></div></div><div style="margin:0cm 0cm 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">______________________________<wbr>_________________<br>Matplotlib-users mailing list<br><a href="mailto:Matplotlib-users@python.org" style="color:purple;text-decoration:underline" target="_blank">Matplotlib-users@python.org</a><br><a href="https://mail.python.org/mailman/listinfo/matplotlib-users" style="color:purple;text-decoration:underline" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/matplotlib-<wbr>users</a><u></u><u></u></div></blockquote></div></div><span style="font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">______________________________<wbr>_________________</span><br style="font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Matplotlib-users mailing list</span><br style="font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><a href="mailto:Matplotlib-users@python.org" style="color:purple;text-decoration:underline;font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px" target="_blank">Matplotlib-users@python.org</a><br style="font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><a href="https://mail.python.org/mailman/listinfo/matplotlib-users" style="color:purple;text-decoration:underline;font-family:Helvetica-Oblique;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/matplotlib-<wbr>users</a></div></blockquote></div><br></div></div></div></div><br>______________________________<wbr>_________________<br>
Matplotlib-users mailing list<br>
<a href="mailto:Matplotlib-users@python.org">Matplotlib-users@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/matplotlib-users" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/matplotlib-<wbr>users</a><br>
<br></blockquote></div><br></div>