Hi,
How can I plot numbers on the x and y axes in scientific notation?
I have very large values on the y axis which I’d like to show as 1e9 and not 1 followed by 9 zeros.
Hi,
How can I plot numbers on the x and y axes in scientific notation?
I have very large values on the y axis which I’d like to show as 1e9 and not 1 followed by 9 zeros.
You can use
def ticklabel_format(self, **kwargs):
"""
Convenience method for manipulating the ScalarFormatter
used by default for linear axes.
Optional keyword arguments:
======= =====================================
Keyword Description
======= =====================================
*style* [ 'sci' (or 'scientific') | 'plain' ]
plain turns off scientific notation
*axis* [ 'x' | 'y' | 'both' ]
======= =====================================
Only the major ticks are affected.
If the method is called when the
:class:`~matplotlib.ticker.ScalarFormatter` is not the
:class:`~matplotlib.ticker.Formatter` being used, an
:exc:`AttributeError` will be raised with no additional error
message.
Additional capabilities and/or friendlier error checking may
be added.
"""
anirudh vij wrote:
Hi,
How can I plot numbers on the x and y axes in scientific notation?
I have very large values on the y axis which I'd like to show as 1e9 and not 1 followed by 9 zeros.------------------------------------------------------------------------
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
------------------------------------------------------------------------_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
matplotlib-users List Signup and Options
--
Michael Droettboom
Science Software Branch
Operations and Engineering Division
Space Telescope Science Institute
Operated by AURA for NASA
It did not figure how to use that!
I've tried in ipython :
import numpy as np
t = np.linspace(0,1,1024)
f = np.sin(10*t)/1e5
plot(t,f)
ax = gca()
ax.ticklabel_format(style='sci', axis='y')
show()
but the yticklabels are still in plain notation...
I've googled, but I still can not find where I am wrong!
Le mardi 09 septembre 2008 à 08:26 -0400, Michael Droettboom a écrit :
You can use
def ticklabel_format(self, **kwargs):
--
Fabrice Silva <silva@...1918...>
LMA UPR CNRS 7051
Fabrice Silva wrote:
You can use
def ticklabel_format(self, **kwargs):
It did not figure how to use that!
I've tried in ipython :
import numpy as np
t = np.linspace(0,1,1024)
f = np.sin(10*t)/1e5
plot(t,f)
ax = gca()
ax.ticklabel_format(style='sci', axis='y')
ax.yaxis.major.formatter.set_powerlimits((0,0))
show()
but the yticklabels are still in plain notation...
I've googled, but I still can not find where I am wrong!
Yes, this is confusing. The problem is that the "scientific" style uses scientific notation only for sufficiently large or small numbers, with thresholds determined by the powerlimits parameter. The line I added above will force scientific notation.
The ticklabel_format method needs another kwarg to enable setting the powerlimits.
Eric
Le mardi 09 septembre 2008 à 08:26 -0400, Michael Droettboom a écrit :
Eric Firing wrote:
Fabrice Silva wrote:
You can use
def ticklabel_format(self, **kwargs):
It did not figure how to use that!
I've tried in ipython :
import numpy as np
t = np.linspace(0,1,1024)
f = np.sin(10*t)/1e5
plot(t,f)
ax = gca()
ax.ticklabel_format(style='sci', axis='y')ax.yaxis.major.formatter.set_powerlimits((0,0))
show()
but the yticklabels are still in plain notation...
I've googled, but I still can not find where I am wrong!Yes, this is confusing. The problem is that the "scientific" style uses scientific notation only for sufficiently large or small numbers, with thresholds determined by the powerlimits parameter. The line I added above will force scientific notation.
The ticklabel_format method needs another kwarg to enable setting the powerlimits.
Done in svn 6148. I called the kwarg 'scilimits' to emphasize that it works with the 'sci' style; if there are comments to the effect that I should have called it 'powerlimits' for consistency with the corresponding ScalarFormatter method, I can change it.
With the change in svn, instead of the line I added above, your call to ticklabel_format would be:
ax.ticklabel_format(style='sci', scilimits=(0,0), axis='y')
Eric
Le mardi 09 septembre 2008 à 08:26 -0400, Michael Droettboom a écrit :