Re: [R] Draw abbreviated key (lattice, xyplot)

2004-03-19 Thread Vaclav Petricek

Deepayan,

 Both auto.key and simpleKey are convenience tools to make key drawing
 easy in 'typical' cases. For more flexibility, define the key as a list
 (the structure is described under 'key' in ?xyplot). You may want to
 look at ?Rows as well, in conjunction with trellis.par.get().
 See ?splom and ?cloud for examples.

 You are not very explicit in your description, but perhaps your only
 problem with your second solution is that the first 5 levels are in
 alphabetical order (but you haven't said what order you want them to be
 in). This is an artifact of R's factor() function, where the levels are
 by default

  factor(x, levels = sort(unique.default(x), na.last = TRUE), ...

 So your problem may be solved simply by redefining your country variable
 appropriately:

 yourdata$country -
 factor(as.character(yourdata$country),
levels = c('USA', 'Germany',  ... ))

 (the as.character() is probably redundant)

Thank you very much - this solves my problem. Putting the countries of
interest first has two benefits
  a) different colors are assigned to them
  b) including just first n of them in the key using simpleKey is easy

As I am more used a little different notation to construct the levels in
the order I want.

t-transform(t,country=factor(country,
   levels=unique(c(subset(country,year==1997),unique(country)

where

  subset(country,year==1997) are the countries I want to be first
  unique(country) after that ensures that I include all the countries and
  no NAs are introduced

This is how I plot the abbreviated key then

attach(t)
xyplot(papers~year, groups=country, type='l',
   key=simpleKey(levels(country)[1:10],columns=2,lines=T,points=F))

Thanks again,

Vaclav


 Hope that helps,

 Deepayan

 On Thursday 18 March 2004 09:42, Vaclav Petricek wrote:
  Hello
 
  I have been experimenting with xyplot, reading the help and googling
  but I am still unable to draw an abbreviated key.
 
  I would like to display key for a few particular countries.
 
  My dataset looks like this
 
 year paperscountry papers.total
  1  1988403USA  551
  2  1988 31 United Kingdom  551
  3  1988 24 Canada  551
  4  1988 20Netherlands  551
  5  1988 19 Israel  551
  6  1988 16Germany  551
  7  1988 13 France  551
  8  1988 10  Italy  551
  9  1988  8Switzerland  551
  10 1988  5  Japan  551
  11 1988  5Denmark  551
  12 1988  3  Spain  551
  13 1988  3 Russia  551
  14 1988  2 Sweden  551
  15 1988  2 Poland  551
  16 1988  2Finland  551
  17 1988  2 Brasil  551
  18 1988  2  Australia  551
  19 1988  1   Thailand  551
  20 1988  1 Norway  551
  21 1988  1 Mexico  551
  22 1988  1Ireland  551
  23 1988  1 Greece  551
  24 1989649USA  926
  25 1989 53 United Kingdom  926
  26 1989 43 France  926
  27 1989 37 Canada  926
  28 1989 36Germany  926
  29 1989 28Netherlands  926
  30 1989 19 Sweden  926
  [...]
 
  I use xyplot to show how many papers
 
   xyplot(papers~year,groups=country,type='l',auto.key=T)
 
  produces an extremely long key
 
   xyplot(papers~year,groups=country,type='l',key=simpleKey(levels(as.
  factor(country))[1:5]))
 
  shows *alphabetically* first five countries in the key
 
   xyplot(papers~year,groups=country,type='l',key=simpleKey(c('USA','G
  ermany')))
 
  displays correct countries but the colors obviously do not match.
 
  Could you please point me in the right direction?
 
  Vaclav
 
  __
  [EMAIL PROTECTED] mailing list
  https://www.stat.math.ethz.ch/mailman/listinfo/r-help
  PLEASE do read the posting guide!
  http://www.R-project.org/posting-guide.html


__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


[R] Draw abbreviated key (lattice, xyplot)

2004-03-18 Thread Vaclav Petricek

Hello

I have been experimenting with xyplot, reading the help and googling but
I am still unable to draw an abbreviated key.

I would like to display key for a few particular countries.

My dataset looks like this

   year paperscountry papers.total
1  1988403USA  551
2  1988 31 United Kingdom  551
3  1988 24 Canada  551
4  1988 20Netherlands  551
5  1988 19 Israel  551
6  1988 16Germany  551
7  1988 13 France  551
8  1988 10  Italy  551
9  1988  8Switzerland  551
10 1988  5  Japan  551
11 1988  5Denmark  551
12 1988  3  Spain  551
13 1988  3 Russia  551
14 1988  2 Sweden  551
15 1988  2 Poland  551
16 1988  2Finland  551
17 1988  2 Brasil  551
18 1988  2  Australia  551
19 1988  1   Thailand  551
20 1988  1 Norway  551
21 1988  1 Mexico  551
22 1988  1Ireland  551
23 1988  1 Greece  551
24 1989649USA  926
25 1989 53 United Kingdom  926
26 1989 43 France  926
27 1989 37 Canada  926
28 1989 36Germany  926
29 1989 28Netherlands  926
30 1989 19 Sweden  926
[...]

I use xyplot to show how many papers

 xyplot(papers~year,groups=country,type='l',auto.key=T)

produces an extremely long key

 xyplot(papers~year,groups=country,type='l',key=simpleKey(levels(as.factor(country))[1:5]))

shows *alphabetically* first five countries in the key

 xyplot(papers~year,groups=country,type='l',key=simpleKey(c('USA','Germany')))

displays correct countries but the colors obviously do not match.

Could you please point me in the right direction?

Vaclav

__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


Re: [R] Draw abbreviated key (lattice, xyplot)

2004-03-18 Thread Deepayan Sarkar

Both auto.key and simpleKey are convenience tools to make key drawing 
easy in 'typical' cases. For more flexibility, define the key as a list 
(the structure is described under 'key' in ?xyplot). You may want to 
look at ?Rows as well, in conjunction with trellis.par.get(). 
See ?splom and ?cloud for examples.

You are not very explicit in your description, but perhaps your only 
problem with your second solution is that the first 5 levels are in 
alphabetical order (but you haven't said what order you want them to be 
in). This is an artifact of R's factor() function, where the levels are 
by default 

 factor(x, levels = sort(unique.default(x), na.last = TRUE), ...

So your problem may be solved simply by redefining your country variable 
appropriately:

yourdata$country - 
factor(as.character(yourdata$country), 
   levels = c('USA', 'Germany',  ... ))

(the as.character() is probably redundant)

Hope that helps,

Deepayan

On Thursday 18 March 2004 09:42, Vaclav Petricek wrote:
 Hello

 I have been experimenting with xyplot, reading the help and googling
 but I am still unable to draw an abbreviated key.

 I would like to display key for a few particular countries.

 My dataset looks like this

year paperscountry papers.total
 1  1988403USA  551
 2  1988 31 United Kingdom  551
 3  1988 24 Canada  551
 4  1988 20Netherlands  551
 5  1988 19 Israel  551
 6  1988 16Germany  551
 7  1988 13 France  551
 8  1988 10  Italy  551
 9  1988  8Switzerland  551
 10 1988  5  Japan  551
 11 1988  5Denmark  551
 12 1988  3  Spain  551
 13 1988  3 Russia  551
 14 1988  2 Sweden  551
 15 1988  2 Poland  551
 16 1988  2Finland  551
 17 1988  2 Brasil  551
 18 1988  2  Australia  551
 19 1988  1   Thailand  551
 20 1988  1 Norway  551
 21 1988  1 Mexico  551
 22 1988  1Ireland  551
 23 1988  1 Greece  551
 24 1989649USA  926
 25 1989 53 United Kingdom  926
 26 1989 43 France  926
 27 1989 37 Canada  926
 28 1989 36Germany  926
 29 1989 28Netherlands  926
 30 1989 19 Sweden  926
 [...]

 I use xyplot to show how many papers

  xyplot(papers~year,groups=country,type='l',auto.key=T)

 produces an extremely long key

  xyplot(papers~year,groups=country,type='l',key=simpleKey(levels(as.
 factor(country))[1:5]))

 shows *alphabetically* first five countries in the key

  xyplot(papers~year,groups=country,type='l',key=simpleKey(c('USA','G
 ermany')))

 displays correct countries but the colors obviously do not match.

 Could you please point me in the right direction?

 Vaclav

 __
 [EMAIL PROTECTED] mailing list
 https://www.stat.math.ethz.ch/mailman/listinfo/r-help
 PLEASE do read the posting guide!
 http://www.R-project.org/posting-guide.html

__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html