ggplot2で水準ごとに色分けすると結構わかりづらい。
形で分けたくなるけど水準が多い場合デフォルトだとshapeが足りなくなる。
ggplot(smp, aes(x = year, y = value, group = country)) + geom_line(aes(color = country)) +
geom_point(aes(color = country, shape = country))
したがってmanualで指定してやる必要がある。
ggplot(smp, aes(x = year, y = value, group = country)) + geom_line(aes(color = country)) +
geom_point(aes(color = country, shape = country)) + scale_shape_manual(values = seq_along(unique(smp$country)))
symbolの番号対応表はこちら
http://wiki.stdout.org/rcookbook/Graphs/Shapes%20and%20line%20types/
↓でmatplotによる鮮やかな解法が示されている。
http://blog.goo.ne.jp/r-de-r/e/29758f8210d278bcf4d0599664621fd2
同じようなことをggplot2でやるとすると下記だけど、まあmatplotで書いた方が簡潔でよいでしょうね。
last_plot() + geom_text(data = subset(smp, year == 2009), aes(x = 2010,
y = value, label = country), size = 2) + opts(legend.position = "none")