Dear all again,

I've tried to play with it again, but I couldn't find a solution for
the problem.
For clarity I report an example of what each of the subplots looks like:

> import numpy as np
> import matplotlib.pyplot as plt
> mean = np.array([-0.9206394,  -0.90127456, -0.91983625, -0.97765539, 
> -1.02991184, -1.02267017, -0.97730167, -0.93715172, -0.94324653, -0.92884379])
> stddev = np.array([0.16351397, 0.15075966,  0.13413909,  0.15404823,  
> 0.13559582,  0.13109754,  0.12128598,  0.11589682,  0.11921571,  0.10866761])
>
> ax = plt.figure().add_axes([0.1,0.1,0.8,0.8])
> ax.errorbar(np.arange(10,20)/100., mean, yerr=stddev)
>
> ax.set_xlim([0.095, 0.195])
> lab = ax.get_ymajorticklabels()
>
> print lab
> for i in lab:
>  print i
>
> plt.show()

as output of this script I get
> <a list of 7 Text yticklabel objects>
> Text(0,0,'')
> Text(0,0,'')
> Text(0,0,'')
> Text(0,0,'')
> Text(0,0,'')
> Text(0,0,'')
> Text(0,0,'')
In the plot instead I only have only 5 y tick labels, as visible from
the attachment. In this case if I set the first and the last label
invisible, nothing changes, and if I have other plots under this the
plot becomes ugly/unreadable.

I hope to have been clearer than in my previous mail.
Any suggestion on how to fix or find a workaround in order to get the
same number of tick labels as the ones actually plotted.

Thank in advance
Fra


2011/2/1 Francesco Montesano <franz.berges...@googlemail.com>:
> Dear all,
>
> I'm producing a single figure with subplots arrange in a single columns.
> They all share the same x range but the y variable change from subplot to
> subplot
>
> In order have a nicer figure I hide the first and the last y label of each
> subplot in the following way
>>
>> ytl = subpl.get_ymajorticklabels()
>> ytl[0].set_visible(False)
>> ytl[-1].set_visible(False)
>
> It was well in most cases. But I've noticed that in some plot the first
> and/or the last label remains.
> In this cases, if I "print ytl", it writes "<a list of n Text yticklabel
> objects>", where "n" is larger by 1 or 2 than the number of labels shown
> before I make them invisible.
> So I end up having some label (nearly) exactly on the upper and/or bottom
> range of the plot.
>
> Is there a way to force the axis to return exactly the number of labels
> shown in the plot?
>
> Thanks in advance,
>
> Francesco
>
>
>



--
personals: monty...@yahoo.it, monte_...@hotmail.com (messenger),
franz.berges...@googlemail.com.
work: monte...@mpe.mpg.de

http://picasaweb.google.it/franz.bergesund

<<attachment: example.png>>

------------------------------------------------------------------------------
The modern datacenter depends on network connectivity to access resources
and provide services. The best practices for maximizing a physical server's
connectivity to a physical network are well understood - see how these
rules translate into the virtual world? 
http://p.sf.net/sfu/oracle-sfdevnlfb
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to