[R] background color for plotting symbols in 'matplot'

joerg van den hoff j.van_den_hoff at fz-rossendorf.de
Wed Jan 19 13:03:40 CET 2005


thanks for the response.


Uwe Ligges wrote:
> joerg van den hoff wrote:
> 
>> something like
>>
>>
>> matplot2(matrix(1:6,3,2),matrix(7:12,3,2),pch=21,bg=c(2,3),type='b')
> 
> 
> Where can we find "matplot2"?
oops. that should have been 'matplot' (not 'matplot2'), of course.
> 
> 
>> does not yield the expected (at least by me) result: only the points 
>> on the first line get (successively) background colors for the 
>> plotting symbols, the second line gets no background color at all for 
>> its plotting symbols.
>>
>> I think the natural behaviour should be two curves which (for the 
>> example given above) symbol-background colors 2 and 3, respectively 
>> (as would be obtained by a suitable manual combination of 'plot' and 
>> 'lines'). the modification of the matplot code to achieve this 
>> behaviour is obvious as far as I can see (adding 'bg' to the explicit 
>> arguments of matplot and handling similar to 'lty', 'cex' and the like 
>> inside the function including transfer to 'plot' and 'lines' argument 
>> list).
>>
>>
>> is the present behaviour a bug of 'matplot' or is it for some reason 
>> intended behaviour?
> 
> 
> The real point is that you might want to mark by rows *or* by columns, 
> so it's not that easy to specify a sensible default behaviour, at least 
> one has to think about it.
I'm aware of this: any specific behaviour could be the 'best' default 
for someone. in terms of consistency, I would argue that matplot plots 
"columns of x against columns of y", so these columns should be 
addressed. that is how 'lty' and 'pch' and 'cex' do it. the present 
behaviour of 'bg' ('bg' interpreted only for "column 1 of x against 
column 1 of y") is not sensible.

> 
> If you want to implement it for all possible arguments, the well known 
> problem of huge number of arguments springs to mind as well.
that is indeed a problem, but I think mainly when reading the help 
pages, which then are cluttered with many not often used graphic parameters.
> 
> Since you say the "modification [...] is obvious": I think R-core 
> welcomes your contribution.
well, I'm not a fluent R programmer. I'm not sure if the simple minded 
modification of 'matplot' would be welcome by R-core. rather, I attach 
here the modified code 'matplot2' (sic!), if someone wants to use it. a 
'diff' vs. the original versions shows easily the few modified lines.

joerg

> 
> Uwe Ligges
> 
> 
> 
>>
>> regards,
>>
>> joerg
>>
>> ______________________________________________
>> R-help at stat.math.ethz.ch mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide! 
>> http://www.R-project.org/posting-guide.html
> 
> 
> 




-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: matplot2.R
Url: https://stat.ethz.ch/pipermail/r-help/attachments/20050119/02cbf05b/matplot2.pl


More information about the R-help mailing list