[R] Can someone please explain why the last tick mark on this chart is not showing?
David Winsemius
dwinsemius at comcast.net
Wed Sep 16 17:35:33 CEST 2009
It shows if you lower your minimum a bit by applying a factor of 0.90
to your generation of dataMin.
--
David.
On Sep 16, 2009, at 11:27 AM, Jorgy Porgee wrote:
> Hi David,
>
> Sorry, forgot to define pxTarget. It can be anything you choose so say
> pxTarget<-10000. I've also renamed "sample" to "sampleData". The
> following cut and paste should work:
> The last tick mark (5000) is not showing for some reason... :-/
>
> Regards,
>
> George
>
>
> sampleData<-c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
> NA, NA, NA, 5525, 5600, 7100, 6124, 6550, 6061, 6950, 6650, 7150,
> 7275, 8700, 10511, 10399, 10345, 11200, 10200, 11035, 12500,
> 15750, 14445, 10902, 11500, 8527, 6440, 7140, 7190, 6844, 6750,
> 6924, 6268, 8010, 7575, 8200, 9240)
> pxTarget<-10000
> # Plotting code
> # Box settings
> par(bty="l",ps=7,tcl=0.2,mgp=c(0.5,0.2,0),bg="white");
> # Make x axis match exactly the data
> par(xaxs="i",yaxs="r");
> # Margins
> par(mar=c(1.2,1.8,1,1))
>
> # Step 1: Generate logs for the data
> sampleLog<-log(sampleData,10)
> # Step 2: Determine pretty min/max for the data
> purtee<-pretty(c(sampleData,pxTarget))
> dataMin<-min(sampleData,na.rm=T)*0.95
> dataMax<-max(purtee)
> # Step 3: Create exponential series
> t<-exp(seq(log(dataMin),log(dataMax),length=11))
> t2<-round(t,-1)
> t2[t2==0]<-1
> # natural looking labels
> lab<-signif(round(t,-1),2)
> lab[1]<-signif(lab[1],1)
> ylimits<-range(log(t2,10))
> plot
> (sampleLog,type='l',xaxt="n",yaxt="n",ylim=ylimits,las=2,ann=FALSE)
> axis(2,las=2,at=log(lab,10),labels=lab);
>
>
> On Wed, Sep 16, 2009 at 5:20 PM, David Winsemius <dwinsemius at comcast.net
> > wrote:
>>
>> On Sep 16, 2009, at 11:13 AM, Jorgy Porgee wrote:
>>
>>> Hi all,
>>>
>>> I'm trying to log chart but with natural looking tick marks. My
>>> specifications are very specific -- it must indicate the lowest
>>> number's tick as well as the maximum.
>>>
>>> I've attached sample code and data for a particular case (and there
>>> are a few more like this) where the bottom tickmarks on the chart
>>> are
>>> not set to where I want them to be and yet they fit in the ylim
>>> range.
>>>
>>> Please, can anyone help? I'm tearing my hair out at this point..
>>>
>>> Thanking you in advance,
>>>
>>> George.
>>>
>>> # Code below
>>>
>>> sample<-c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
>>> NA, NA, NA, 5525, 5600, 7100, 6124, 6550, 6061, 6950, 6650, 7150,
>>> 7275, 8700, 10511, 10399, 10345, 11200, 10200, 11035, 12500,
>>> 15750, 14445, 10902, 11500, 8527, 6440, 7140, 7190, 6844, 6750,
>>> 6924, 6268, 8010, 7575, 8200, 9240)
>>>
>>> # Plotting code
>>> # Box settings
>>> par(bty="l",ps=7,tcl=0.2,mgp=c(0.5,0.2,0),bg="white");
>>> # Make x axis match exactly the data
>>> par(xaxs="i",yaxs="r");
>>> # Margins
>>> par(mar=c(1.2,1.8,1,1))
>>>
>>> # Step 1: Generate logs for the data
>>> sampleLog<-log(sample,10)
>>> # Step 2: Determine pretty min/max for the data
>>> purtee<-pretty(c(sample,pxTarget))
>>
>> Error in pretty(c(sample, pxTarget)) : object 'pxTarget' not found
>> ...which then creates a cascade of errors
>>
>>> dataMin<-min(sample,na.rm=T)*0.95
>>> dataMax<-max(purtee)
>>> # Step 3: Create exponential series
>>> t<-exp(seq(log(dataMin),log(dataMax),length=11))
>>> t2<-round(t,-1)
>>> t2[t2==0]<-1
>>> # natural looking labels
>>> lab<-signif(round(t,-1),2)
>>> lab[1]<-signif(lab[1],1)
>>> ylimits<-range(log(t2,10))
>>> plot
>>> (sampleLog,type='l',xaxt="n",yaxt="n",ylim=ylimits,las=2,ann=FALSE)
>>> axis(2,las=2,at=log(lab,10),labels=lab);
>>>
>>> ______________________________________________
>>> R-help at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>
>> David Winsemius, MD
>> Heritage Laboratories
>> West Hartford, CT
>>
>>
David Winsemius, MD
Heritage Laboratories
West Hartford, CT
More information about the R-help
mailing list