# Scientific notation in plots

5 messages
Open this post in threaded view
|
Report Content as Inappropriate

## Scientific notation in plots

 Is it possible to use scientific notation of numbers on the axis of plots without using the xEy notation. That means: a beatiful 1x10^3 instead of 1E3. Logarithmic scale, in my case. Thank you very much! Oddmund ******************************************   Oddmund Nordgård   Department of Haematology and Oncology   Stavanger University Hospital   P.O. Box 8100   4068 STAVANGER   Phone: 51 51 89 34   Email: [hidden email] ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Open this post in threaded view
|
Report Content as Inappropriate

## Re: Scientific notation in plots

 try something like this: >axis(side=2, at=c(0, 5e+5, 1.5e+6, 2.5e+6), labels=expression(0, 5%*%10^5, 1.5%*%10^6, 2.5%*%10^6) it will place your 5e+5, 1.5e+6, 2.5e+6 as scientific notation at the correct positions on the y axis. the key is the "labels=expression...." part. Cheers iain --- Oddmund NordgÃ¥rd <[hidden email]> wrote: > > Is it possible to use scientific notation of numbers > on the axis of plots > without using the xEy notation. That means: a > beatiful 1x10^3 instead of 1E3. > Logarithmic scale, in my case. > > Thank you very much! > > Oddmund > > ****************************************** > >   Oddmund Nordgård > >   Department of Haematology and Oncology >   Stavanger University Hospital >   P.O. Box 8100 >   4068 STAVANGER >   Phone: 51 51 89 34 >   Email: [hidden email] > > ______________________________________________ > [hidden email] mailing list > https://stat.ethz.ch/mailman/listinfo/r-help> PLEASE do read the posting guide! > http://www.R-project.org/posting-guide.html> ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Open this post in threaded view
|
Report Content as Inappropriate

## Re: Scientific notation in plots

 Just what I needed! Thank you very much! Oddmund On Fri, 13 Jan 2006, IAIN GALLAGHER wrote: > try something like this: > > >axis(side=2, at=c(0, 5e+5, 1.5e+6, 2.5e+6), > labels=expression(0, 5%*%10^5, 1.5%*%10^6, 2.5%*%10^6) > > it will place your 5e+5, 1.5e+6, 2.5e+6 as scientific > notation at the correct positions on the y axis. the > key is the "labels=expression...." part. > > Cheers > > iain > > --- Oddmund NordgÃ¥rd <[hidden email]> wrote: > > > > > Is it possible to use scientific notation of numbers > > on the axis of plots > > without using the xEy notation. That means: a > > beatiful 1x10^3 instead of 1E3. > > Logarithmic scale, in my case. > > > > Thank you very much! > > > > Oddmund > > > > ****************************************** > > > >   Oddmund Nordgård > > > >   Department of Haematology and Oncology > >   Stavanger University Hospital > >   P.O. Box 8100 > >   4068 STAVANGER > >   Phone: 51 51 89 34 > >   Email: [hidden email] > > > > ______________________________________________ > > [hidden email] mailing list > > https://stat.ethz.ch/mailman/listinfo/r-help> > PLEASE do read the posting guide! > > http://www.R-project.org/posting-guide.html> > > ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Open this post in threaded view
|
Report Content as Inappropriate

## Re: Scientific notation in plots

 In reply to this post by Oddmund NordgÃ¥rd You could also use a function like this to transform a number x into your "beautiful" notation, where x is the number and digits is the number of digits you would like to see after the decimal. Then you could use the axis and labels syntax suggested by Iain, as such: sciNotation <- function(x, digits = 1) {     if (length(x) > 1) {         return(append(sciNotation(x[1]), sciNotation(x[-1])))     }     if (!x) return(0)     exponent <- floor(log10(x))     base <- round(x / 10^exponent, digits)     as.expression(substitute(base %*% 10^exponent,                         list(base = base, exponent = exponent))) } plot(1:1000, axes = FALSE, type = "l", frame.plot = TRUE) axis(1, at = axTicks(1), label = sciNotation(axTicks(1), 1)) -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of IAIN GALLAGHER Sent: Friday, January 13, 2006 8:09 AM To: Oddmund NordgÃ¥rd Cc: [hidden email] Subject: Re: [R] Scientific notation in plots try something like this: >axis(side=2, at=c(0, 5e+5, 1.5e+6, 2.5e+6), labels=expression(0, 5%*%10^5, 1.5%*%10^6, 2.5%*%10^6) it will place your 5e+5, 1.5e+6, 2.5e+6 as scientific notation at the correct positions on the y axis. the key is the "labels=expression...." part. Cheers iain --- Oddmund NordgÃ¥rd <[hidden email]> wrote: > > Is it possible to use scientific notation of numbers > on the axis of plots > without using the xEy notation. That means: a > beatiful 1x10^3 instead of 1E3. > Logarithmic scale, in my case. > > Thank you very much! > > Oddmund > > ****************************************** > >   Oddmund Nordgård > >   Department of Haematology and Oncology >   Stavanger University Hospital >   P.O. Box 8100 >   4068 STAVANGER >   Phone: 51 51 89 34 >   Email: [hidden email] > > ______________________________________________ > [hidden email] mailing list > https://stat.ethz.ch/mailman/listinfo/r-help> PLEASE do read the posting guide! > http://www.R-project.org/posting-guide.html> ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide! http://www.R-project.org/posting-guide.html______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide! http://www.R-project.org/posting-guide.html