[R] Logarithmic axis
Julian Burgos
jmburgos at u.washington.edu
Wed Nov 21 01:49:33 CET 2007
Like always, there is much to be learned from the R-help list! Another
message had a much simpler approach.
plot(xy.coords(reizstaerke, kennlinie1, log="x"), log="x")
Julian
Julian Burgos wrote:
> Hey John,
>
> You can do simply
>
> plot(reizstaerke, kennlinie1, ylim=c(0, max(kennlinie1,
> kennlinie2)),log="x")
>
> but if you want to fine tune where the tick marks are, you can do it "by
> hand".
>
> kennlinie1 <- c(8.0746909, 3.9916973, 9.9789444, 19.962869);
> kennlinie2 <- c(6.0994206, 8.9661081, 19.924883, 31.879496);
> reizstaerke <- c(76, 92, 108, 124);
> plot(log10(reizstaerke), kennlinie1, ylim=c(0, max(kennlinie1,
> kennlinie2)),axes=F)
> box()
> axis(1,at=log10(seq(75,125,by=5)),label=seq(75,125,by=5))
> axis(2)
>
> The obvious reason that you are getting a plot with a single 100 and
> nothing else is that the range of the values in the reizstaerke vector
> is away from 10 and from 1000. If you really want to have the log scale
> in the way you described, you could do something like this:
>
> plot(log10(reizstaerke), kennlinie1, ylim=c(0, max(kennlinie1,
> kennlinie2)),axes=F,xlim=log10(c(1,1000)))
> box()
> axis(1,at=log10(c(1,10,100,1000)),label=c(1,10,100,1000))
> axis(2)
>
> Julian
>
>
> John Wiedenhoeft wrote:
>> Hi there,
>>
>> I guess this must be a standard issue, but I'm starting to go crazy
>> with it. I simply want a plot with the x axis being logarithmic,
>> having labels 1, 10, 100..., and ten unlabelled ticks between each of
>> them - just as they introduce logarithmic axis at school. I've played
>> around a bit with log="x", xlog=T (where exactly is the difference
>> here?), xaxp, and xaxt (unfortunately xaxt="l" isn't implemented). The
>> best I get is a plot with an axis having a single 100 and nothing else...
>>
>> here is what I've tried:
>>
>> pdf(file="kennlinien.pdf");
>> par(log="x", xlog=TRUE);
>> kennlinie1 <- c(8.0746909, 3.9916973, 9.9789444, 19.962869);
>> kennlinie2 <- c(6.0994206, 8.9661081, 19.924883, 31.879496);
>> reizstaerke <- c(76, 92, 108, 124);
>> #plot(reizstaerke, kennlinie1, ylim=c(0, max(kennlinie1, kennlinie2)),
>> xlim=c(0, max(reizstaerke)), log="x", xlog=TRUE, xaxp=c(1, 2, 1),
>> type="b");
>> #plot(reizstaerke, kennlinie1, type="b", log="x", xlog=TRUE, xaxp=c(1,
>> 2, 3));
>> plot(reizstaerke, kennlinie1, type="b",usr=c(min(reizstaerke),
>> max(reizstaerke), min(kennlinie1, kennlinie2), max(kennlinie1,
>> kennlinie2)), log="x", xlog=TRUE, xaxp=c(1, 2, 3));
>> #points(reizstaerke, kennlinie2, xlog=TRUE, xaxp=c(1, 3, 3), type="b");
>> dev.off();
>>
>> Certainly I've missed something, but I can't figure it out.
>>
>> Any help appreciated,
>> Cheers, John
>>
>>
>>
>> platform i486-pc-linux-gnu
>> arch i486
>> os linux-gnu
>> system i486, linux-gnu
>> status
>> major 2
>> minor 4.1
>> year 2006
>> month 12
>> day 18
>> svn rev 40228
>> language R
>> version.string R version 2.4.1 (2006-12-18)
>>
>> ______________________________________________
>> 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.
>
>
More information about the R-help
mailing list