crosshyou

主にクロス表(分割表)分析をしようかなと思いはじめましたが、あまりクロス表の分析はできず。R言語の練習ブログになっています。

牛乳乳製品の生産動向分析5 - 主要乳製品の伸び率を棒グラフにする。(barplot関数)

前回は、主要乳製品の生産量をグラフにしました。今回は、伸び率をグラフにしようと思います。

まずは、csvファイルに保存してあるデータをread.csv関数で読み込みます。

f:id:cross_hyou:20180816191511j:plain

伸び率だけのデータフレームを作成します。

f:id:cross_hyou:20180816191718j:plain

伸び率は、3列目から17列目までの奇数列にあるので、milk[ , c(3,5,7,9,11,13,15,17)]とその列だけを指定しています。

生産量をグラフにしたときはplot関数でしたが、今回は棒グラフにしてみます。barplot関数です。

f:id:cross_hyou:20180816192225j:plain

f:id:cross_hyou:20180816192506j:plain

次は、脱脂粉乳です。

f:id:cross_hyou:20180816192816j:plain

f:id:cross_hyou:20180816192828j:plain

main="脱脂粉乳伸び率"というオプションをつけて、グラフにタイトルを表示しました。

次は、れん乳類です。

f:id:cross_hyou:20180816193337j:plain

f:id:cross_hyou:20180816193349j:plain

names.arg=milk$年度 というオプションをつけて、それぞれのバーに対応する年度を表示しました。

次は全粉乳伸び率です。

f:id:cross_hyou:20180816193905j:plain

f:id:cross_hyou:20180816193922j:plain

ylim=c(-30,30)というオプションを追加して、Y軸の範囲を指定しています。

次は、チーズです。

f:id:cross_hyou:20180816194655j:plain

f:id:cross_hyou:20180816194707j:plain

col="red" を追加して赤い色にしています。最初の年の伸び率が突出していますね。

次は調製紛乳です。

f:id:cross_hyou:20180816195155j:plain

col="blue"で青くしてみました。

次は、クリームです。

f:id:cross_hyou:20180816195531j:plain

f:id:cross_hyou:20180816195554j:plain

col="yellow"で黄色くしました。

最後はアイスクリームです。

f:id:cross_hyou:20180816200033j:plain

f:id:cross_hyou:20180816195956j:plain

こうして伸び率を棒グラフにしてみましたが、いまひとつ各製品の伸び率を把握しきれない感じです。

最後に、棒グラフの高さによって色の濃さが変わる方法を書いておきます。

アイスクリームを例にしてみます。

f:id:cross_hyou:20180816200947j:plain

f:id:cross_hyou:20180816201007j:plain

これは、参考文献で掲示している、Rクックブックにあった方法です。

rel.hts <- rank(伸び率$アイスクリーム伸び率) / length(伸び率$アイスクリーム伸び率)

で棒のランクを0と1の間で表される高さの相対値に変換します。

そして、値の大きい棒が明るい色ではなく、暗い色になるように相対高さを反転させ、高さの相対値をグレースケールのベクトルに変換します。

grays <- gray(1 - rel.hts)

こうして、col=grays とします。