[R] tip: large plots
Franklin Bretschneider
f.bretschneider at uu.nl
Fri Nov 18 21:26:02 CET 2011
Dear Sarah,
RE:
> Hi all,
>
> I'm working with a bunch of large graphs, and stumbled across
> something useful. Probably many of you know this, but I didn't and so
> others might benefit.
>
> Using pch="." speeds up plotting considerably over using symbols.
>
>> x <- runif(1000000)
>> y <- runif(1000000)
>> system.time(plot(x, y, pch="."))
> user system elapsed
> 1.042 0.030 1.077
>> system.time(plot(x, y))
> user system elapsed
> 37.865 0.033 38.122
>
> If you have enough points, the result is also more legible.
>
> Choice of which pch symbol makes a difference too, the default pch=1 being
> the slowest of what I tried, but "." is by far the speediest.
>
>> system.time(plot(x, y, pch=0))
> user system elapsed
> 11.191 0.011 11.270
>> system.time(plot(x, y, pch=1))
> user system elapsed
> 38.024 0.008 38.245
>> system.time(plot(x, y, pch=2))
> user system elapsed
> 14.140 0.027 14.270
>> system.time(plot(x, y, pch=3))
> user system elapsed
> 15.696 0.011 15.799
>> system.time(plot(x, y, pch=4))
> user system elapsed
> 18.770 0.007 18.888
>
> This is a vanilla R session, 2.13.1 for x86_64-redhat-linux-gnu. I
> haven't tried it on any other OS, but it's making my life a lot
> smoother right now.
>
> Sarah
With Mac OS10 (Snow Leopard, MacBookPro, R version 2.14.0), it 's a bit different:
2.14) source("/var/folders/t6/t6uCNQmsHsSw6tS6HuHp4U+++TI/-Tmp-//Rtmp4ZzIWp/file6b861d06")
[1] "plot symbol . (dot)"
user system elapsed
16.620 0.087 16.731
[1] "plot symbol default (circle)"
user system elapsed
53.132 0.134 52.959
[1] "symbol# 0"
user system elapsed
18.828 0.090 18.803
[1] "symbol# 1"
user system elapsed
53.046 0.134 52.877
[1] "symbol# 2"
user system elapsed
22.000 0.154 22.401
[1] "symbol# 3"
user system elapsed
20.794 0.096 20.763
[1] "symbol# 4"
user system elapsed
23.534 0.098 23.542
It seems that even-numbered symbols are plotted faster than the odd ones
By the way, I learn a lot about R programming by just following r-help!
Best regards,
Franklin Bretschneider
--
Dept Biologie
Kruytgebouw W711
Padualaan 8
3584 CH Utrecht
The Netherlands
--
f.bretschneider at uu.nl
More information about the R-help
mailing list