Hello everyone. For reasons too long to explain I wanted to do plots similar to histograms with plot(type="h"). I ran into a problem - if I set line width too high, histogram isn't accurate anymore. For example: par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h") abline(h=3) Column 3 appears just as high as it should. But if I do par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h",lwd=100) abline(h=3) then columns become too high. Can I correct the problem or is there another way to display my data correctly? Thanks for help, Ga??per Cankar National Examinations Centre, Slovenia
issue with plot (type="h")
5 messages · Gasper Cankar, Sundar Dorai-Raj, Peter Dalgaard +2 more
Gasper Cankar wrote:
Hello everyone. For reasons too long to explain I wanted to do plots similar to histograms with plot(type="h"). I ran into a problem - if I set line width too high, histogram isn't accurate anymore. For example: par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h") abline(h=3) Column 3 appears just as high as it should. But if I do par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h",lwd=100) abline(h=3) then columns become too high. Can I correct the problem or is there another way to display my data correctly?
Try ?barplot instead: bp <- barplot(c(2, 4, 3, 2), ylim = c(0, 5)) axis(side = 1, at = bp, labels = 1:4) abline(h = 3) box() --sundar
"Gasper Cankar" <gasper.cankar at ric.si> writes:
Hello everyone. For reasons too long to explain I wanted to do plots similar to histograms with plot(type="h"). I ran into a problem - if I set line width too high, histogram isn't accurate anymore. For example: par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h") abline(h=3) Column 3 appears just as high as it should. But if I do par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h",lwd=100) abline(h=3) then columns become too high. Can I correct the problem or is there another way to display my data correctly? Thanks for help,
lend=1 seems to cure it.
O__ ---- Peter Dalgaard ??ster Farimagsgade 5, Entr.B c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
Gasper Cankar <gasper.cankar <at> ric.si> writes:
Hello everyone. For reasons too long to explain I wanted to do plots similar to histograms
with plot(type="h").
I ran into a problem - if I set line width too high, histogram isn't accurate
anymore.
try par(lend=1) instead. Far from obvious, but see
Paul Murrell's article in R News #2 of 2004
cheers
Ben
Hi GaÂÅ¡per
On Wed, 2006-02-22 at 14:12 +0100, Gasper Cankar wrote:
Hello everyone. For reasons too long to explain I wanted to do plots similar to histograms with plot(type="h"). I ran into a problem - if I set line width too high, histogram isn't accurate anymore. For example: par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h") abline(h=3) Column 3 appears just as high as it should. But if I do par(lend=2) plot(c(2,4,3,2),ylim=c(0,5), type="h",lwd=100) abline(h=3) then columns become too high. Can I correct the problem or is there another way to display my data correctly?
You need to use lend=1 or lend="butt" in your par() statement. In my view, it would be nice to change the default to use lend=1 for plot type = h, or at least to include a warning when square is used, since the effect of increasing the lwd may not always be obvious.