COLOR(red){SIZE(20){グラフィックス参考実例集:パイチャート}}

([[グラフィックス参考実例集]]に戻る。[[Rのグラフィックスパラメータ]]を参照する。)~

説明するまでもない円グラフ(パイチャート)。関数pieで円グラフを描くことができます。引数にはベクトルを与えます。水平軸正方向(3時の位置)から反時計回りに、それぞれの値の比率で円が分割されます。~
重要:雑誌や新聞などでは普通は,上の定義とは違う円グラフ,すなわち「12 時の位置から時計回りに」スライスが描かれる。このような円グラフを描くために,いつの頃か,引数に clockwise が加えられた。clockwize=TRUE とすると,「12 時の位置から時計回りに」スライスを描いてくれる。しかし,デフォルトは clockwise=FALSE なので注意。もっとも,円グラフは色々な意味で,「使わない方が良いグラフ」とされている。
重要:雑誌や新聞などでは普通は,上の定義とは違う円グラフ,すなわち「12 時の位置から時計回りに」スライスが描かれる。このような円グラフを描くために,いつの頃か(R 2.2.0 で),引数に clockwise が加えられた。clockwize=TRUE とすると,「12 時の位置から時計回りに」スライスを描いてくれる。しかし,デフォルトは clockwise=FALSE なので注意。もっとも,円グラフは色々な意味で,「使わない方が良いグラフ」とされている。

 > pie(1:5)

のように、単にベクトルだけを与えるのが最も簡単な使い方ですが、他の引数を指定することによって細かな調整を行なうことができます。 
-barplotと同様に、関数pieにもdensity、angle、 colなどの引数が使えます。これらの引数によって塗りつぶしやハッチングが行なえます。 引数namesに各扇形のラベルを指定することができます。 
-引数 inner とouter、rotateでラベルの位置、向きなどを細かく調整することができます。 
-引数explodeには論理ベクトル、あるいはas.integerで整数に変換された数字を指定します。この引数でTRUEあるいは番号で指定された要素に対応する扇形を、円の中心から少し切り離すことによって目立たせます。 

pie で得られる解説によれば、pie chart における角度による比較よりも、例えば dot chart における長さによる比較の方がデータの大小のより正確な情報を与える。

#contents
~
** rainbow カラーパレット24段階で使用。データを度数で与える [#g669c898]
 pie1 <- function () {
   pie(rep(1, 24), col = rainbow(24), radius = 0.9)
 }
#ref(グラフィックス参考実例集:パイチャート/pie1.png, left)

**既定の色指定と注釈。データを比率で与える [#he9114e0]
 pie2 <- function () {
   pie.sales <- c(0.12, 0.3, 0.26, 0.16, 0.04, 0.12)
   names(pie.sales) <- c("Blueberry", "Cherry",
                         "Apple", "Boston Cream", "Other", "Vanilla Cream")
   pie(pie.sales) # default colours
 }
#ref(pie2.png, left)

** 項目を増やすと [#qd4b774a]
 pie8 <- function () {
   pie.sales <- c(0.12, 0.15, 0.15, 0.16, 0.10, 0.16, 0.04, 0.12)
   pie(pie.sales) # default colours
 }
#ref(グラフィックス参考実例集:パイチャート/pie8.png, left)

**色の個別指定 [#e7e648f7]
 pie3 <- function () {
   pie.sales <- c(0.12, 0.3, 0.26, 0.16, 0.04, 0.12)
   pie(pie.sales,
       col = c("purple", "violetred1", "green3", "cornsilk", "cyan", "white"))
 }
#ref(グラフィックス参考実例集:パイチャート/pie3.png, left)

** グレイスケールを6段階(0.4,0.5,...,1.0)で使用 [#mc7a39ae]
 pie4 <- function () {
   pie.sales <- c(0.12, 0.3, 0.26, 0.16, 0.04, 0.12)
   pie(pie.sales, col = gray(seq(0.4,1.0,length=6)))
 }
#ref(グラフィックス参考実例集:パイチャート/pie4.png, left)

** 線ハッチング。density で線密度指定、angle で線の角度を変える [#t9a432c7]
 pie5 <- function () {
   pie.sales <- c(0.12, 0.3, 0.26, 0.16, 0.04, 0.12)
   pie(pie.sales, density = 10, angle = 15 + 10 * 1:6)
 }
#ref(グラフィックス参考実例集:パイチャート/pie5.png, left)

** rainbow カラーパレットを細かく指定することにより連続的変化効果(境界線を書かない) [#jf4329e1]
 pie6 <- function () {
   n <- 200
   pie(rep(1,n), labels="", col=rainbow(n), border=NA,
       main = "pie(*, labels=\"\", col=rainbow(n), border=NA,..")
 }
#ref(グラフィックス参考実例集:パイチャート/pie6.png, left)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS