2

私は 30 年以上にわたって複数のデータ ソースを持っています。データが不連続で、複数の場所で重複しています。各データ ソースのポイントを異なる色でプロットしたいのですが、すべてのデータ ソースを使用する 1 つの近似曲線を追加します。含まれているコードには、いくつかのサンプル データと 2 つのプロット例があります。ggplot への最初の呼び出しは、すべてのデータに対して 1 つの傾向線をプロットします。2 番目の ggplot 呼び出しは、各ソースを独自の傾向線で異なる色で明確にプロットします。

    library(ggplot2)
    the.data <- read.table( header=TRUE, sep=",", 
    text="source,year,value
    S1,1976,56.98
    S1,1977,55.26
    S1,1978,68.83
    S1,1979,59.70
    S1,1980,57.58
    S1,1981,61.54
    S1,1982,48.65
    S1,1983,53.45
    S1,1984,45.95
    S1,1985,51.95
    S1,1986,51.85
    S1,1987,54.55
    S1,1988,51.61
    S1,1989,52.24
    S1,1990,49.28
    S1,1991,57.33
    S1,1992,51.28
    S1,1993,55.07
    S1,1994,50.88
    S2,1993,54.90
    S2,1994,51.20
    S2,1995,52.10
    S2,1996,51.40
    S3,2002,57.95
    S3,2003,47.95
    S3,2004,48.15
    S3,2005,37.80
    S3,2006,56.96
    S3,2007,48.91
    S3,2008,44.00
    S3,2009,45.35
    S3,2010,49.40
    S3,2011,51.19") 
    ggplot( the.data, aes( the.data$year, the.data$value ) ) + geom_point() + geom_smooth()
    #ggplot( the.data, aes( the.data$year, the.data$value, color=the.data$source ) ) + geom_point() + geom_smooth()

2 番目の呼び出しでは、色付きのデータ ポイントが表示されます。すべての年を表す 1 つの連続した傾向線を追加したいと思います。

4

1 に答える 1

5

このような:

ggplot(the.data, aes( x = year, y = value ) ) + 
    geom_point(aes(colour = source)) + 
    geom_smooth(aes(group = 1))

ここに画像の説明を入力

いくつかのメモ:

  • のような孤立したベクトルに美学をマッピングしないでくださいthe.data$year。(自分が何をしているのかを本当に理解し、いつそのルールを破るべきかを知るまで。) 列名だけを使用してください。

  • それぞれのgeom呼び出しで、必要な美学を別々のレイヤーにマッピングします。この場合、点の色を変えたいのですが、滑らかな線のために、データをまとめてグループ化します ( group = 1)。

于 2012-10-10T01:56:07.523 に答える