[R/SAS/Python]積み上げエリアグラフ
目的
以下のデータを用いて積み上げエリアグラフを作成する。
データ
CATE | VAR1 | VAR2 |
---|---|---|
A | 1 | 10 |
A | 2 | 13 |
A | 3 | 13 |
A | 4 | 14 |
B | 1 | 11 |
B | 2 | 12 |
B | 3 | 9 |
B | 4 | 8 |
C | 1 | 8 |
C | 2 | 12 |
C | 3 | 15 |
C | 4 | 16 |
プログラム
RSASPythom
#ライブラリ呼び出し library(ggplot2) #データ作成 DATA <- data.frame(CATE = c("A","A","A","A","B","B","B","B","C","C","C","C"), VAR1 = c(1,2,3,4,1,2,3,4,1,2,3,4), VAR2 = c(10,13,14,14,11,12,9,8,8,12,15,16)) #折れ線グラフ(エリア積み上げ)作成 g <- ggplot(DATA, aes(x = VAR1, y = VAR2, fill = CATE)) g <- g + geom_area() plot(g)

/* データセットの作成 */ data DATA; input CATE $ VAR1 VAR2 VAR2L VAR2U; cards; A 1 10 0 10 A 2 13 0 13 A 3 13 0 13 A 4 14 0 14 B 1 11 10 21 B 2 12 13 25 B 3 9 13 22 B 4 8 14 22 C 1 8 21 28 C 2 12 25 37 C 3 15 22 37 C 4 16 22 38 ; run; /* 積み上げエリアグラフ作成 */ proc sgplot data = DATA; band x = VAR1 lower = VAR2L upper = VAR2U / group = CATE; run;

SASのSGPLOTプロシジャでは単純に積み上げることは出来ないので、各エリアの下限(VAR2L)と上限(VAR2U)の変数がデータセットに必要。
#ライブラリ呼び出し import pandas as pd #データフレームの作成 DATA = pd.DataFrame({ 'VAR' : ([1,2,3,4]), 'A' : ([10,13,14,14]), 'B' : ([11,12,9,8]), 'C' : ([8,12,15,16]) }) #折れ線グラフ作成 DATA.plot(kind = "area",x = "VAR", y = ["A","B","C"])

ご意見・ご要望などありましたらコメント欄に書き込みくださいませ。
新規記事投稿のリクエストなどあれば問い合わせフォームからどうぞ。