[R] Plotting averages of y per x
Uwe Ligges
ligges at statistik.uni-dortmund.de
Fri Nov 19 22:20:51 CET 2004
Gregor GORJANC wrote:
> Hello!
>
> I often plot average of y instead of all y values, since one can easily
> see the trend if there is to many points and/or x might be like 1, 2, 3,
> 4, 5, ... and you might get a cloud (which can also be informative)
> and/or columns of points.
>
> Anyway, learning with R i get stucked. I have the data in table
> burnins1, with the following names:
>
> names(burnins1)
> [1] "Model" "Replication" "h2" "burnin"
>
> and some data
> ...
> ...
> 380 New 80 2 23
> 381 New 81 5 38
> 382 New 82 10 31
> 383 New 83 15 98
> 384 New 84 20 32
> 385 New 85 40 30
> 386 New 86 1 43
> 387 New 87 2 53
> 388 New 88 5 36
> 389 New 89 10 51
> 390 New 90 15 19
> ...
> ...
>
> So I want to plot mean of variable burnin by variables model and h2. I
> compute means with
>
> tmp <- as.data.frame(t(tapply(burnin, list(Model, h2), mean)))
>
> and table tmp looks like this
>
> Old New
> 1 31.00 29.36
> 2 30.30 28.34
> 5 32.92 30.66
> 10 39.00 37.54
> 15 40.66 34.07
> 20 39.29 35.94
> 40 28.63 28.51
>
> Now I want to launch something like
> plot(tmp[, 0], Old)
> points(tmp[, 0], New, pch = 20)
>
> and it gives me the error
>
> Error in pairs.default(x, ...) : non-numeric argument to pairs
>
> I guess that I am having problem with tmp[, 0]. If I use
Yes, R starts indexing with 1, but not with 0.
> plot(Old)
> points(New, pch = 20)
>
> I get the plot, but abscisa is numbered from 1 to 7 not 1, 2, 5, 10, 15,
> 20 and 40. Does anyone have any sugestions?
Omit the x axis at first (e.g. using argument xaxt="n") and add it with
axis(2, ...) and correct labels afterwards.
Uwe Ligges
> I would also like to produce table like this, so plotting would be
> easier, since there would be no need to use points() and/or lines()
> commands to add another group.
>
> Model h2 mean
> 1 Old 1 31.00
> 2 Old 2 30.30
> 3 Old 5 32.92
> 4 Old 10 39.00
> 5 Old 15 40.66
> 6 Old 20 39.29
> 7 Old 40 28.63
> 8 Old 1 29.36
> 9 Old 2 28.34
> 10 Old 5 30.66
> 11 Old 10 37.54
> 12 Old 15 34.07
> 13 Old 20 35.94
> 14 Old 40 28.51
>
>
More information about the R-help
mailing list