[Matplotlib-users] changing labeling of axes

Slavin, Jonathan jslavin at cfa.harvard.edu
Wed Nov 8 13:50:13 EST 2017


I was able to get the major ticks labeled in the way I want by doing:
ax.xaxis.set_major_formatter(ticker.FuncFormatter(lambda x,pos:
r'$10^{%i}$'% x))
I don't get any minor ticks that way.  I could live with that, though I'd
prefer to get logarithmically spaced minor ticks.  I tried
ax.xaxis.set_minor_locator(ticker.LogLocator())
but that seemed to have no effect.

The idea of providing logarithmically  bin edges seems like a good one, but
as Tom says does not do what is expected.  I tried using numpy's
histogram2d providing logarithmically spaced bins and it worked as expected
(though for some reason the array returned was transposed), so I think this
is a bug in hist2d.

Jon

On Wed, Nov 8, 2017 at 12:01 PM, Thomas Caswell <tcaswell at gmail.com> wrote:

> You can do this with the formatter on the axis, see
> https://matplotlib.org/gallery/ticks_and_spines/tick-
> formatters.html#sphx-glr-gallery-ticks-and-spines-tick-formatters-py and
> https://matplotlib.org/api/ticker_api.html
>
> You can also pass log-spaced bins to `hist2D` and then set the axis scales
> to log (but trying to construct an example did not got as I expected...)
>
> Tom
>
> On Wed, Nov 8, 2017 at 10:10 AM Slavin, Jonathan <jslavin at cfa.harvard.edu>
> wrote:
>
>> Hi,
>>
>> I'm wondering if anyone knows of a good way to relabel axes for a
>> particular case I'm dealing with. I'm making a 2D histogram, using hist2d
>> of course.  The thing is that for my case, where I'm plotting the density
>> vs. pressure for results from a hydro run, it makes more sense to use the
>> log of the quantities as the inputs for hist2d.  So then I need to give the
>> log of the density and pressure to hist2d. This works fine for making the
>> histogram, but then the axes are labelled with log10(n), log10(P).  I'd
>> prefer to have the axes labelled as for a logarithmic plot, so instead of
>> say 4.0, 10^4.  Is there a simple way of doing that. I'm pretty sure I can
>> just specify by hand the ticks and tick labels, though that's kind of a
>> pain. Any help would be appreciated.
>>
>> Regards,
>> Jon
>>
>> --
>> ________________________________________________________
>> Jonathan D. Slavin                 Harvard-Smithsonian CfA
>> jslavin at cfa.harvard.edu       60 Garden Street, MS 83
>> phone: (617) 496-7981       Cambridge, MA 02138-1516
>> cell: (781) 363-0035             USA
>> ________________________________________________________
>>
>> _______________________________________________
>> Matplotlib-users mailing list
>> Matplotlib-users at python.org
>> https://mail.python.org/mailman/listinfo/matplotlib-users
>>
>


-- 
________________________________________________________
Jonathan D. Slavin                 Harvard-Smithsonian CfA
jslavin at cfa.harvard.edu       60 Garden Street, MS 83
phone: (617) 496-7981       Cambridge, MA 02138-1516
cell: (781) 363-0035             USA
________________________________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-users/attachments/20171108/53adf2cc/attachment.html>


More information about the Matplotlib-users mailing list