始める無料で始める

悪名高い P-I-E

直感的には、円グラフは中央の軸のまわりに“巻き付けた”積み上げ棒グラフと考えることができます。ありがたいことに、この直感は ggplot2 での作り方とよく一致します。

ここでは、who_disease データを集計し、3つの疾病 measlesmumpsother と、それぞれの合計症例数を含むデータフレームを作成するコードが用意されています。

あなたの課題は、空の ggplot オブジェクトを積み上げ棒グラフにし、さらに変換 coord_polar(theta = 'y') を使って円グラフへと変えることです。

美的要素で x = 1 を設定している点に注意してください。これは、ここでは棒グラフを1本だけ描きたいからです。複数の積み上げ棒グラフについては次のレッスンで学びます!

この演習はコースの一部です

R による可視化ベストプラクティス

コースを見る

演習の手順

  • 提供された ggplot オブジェクトに列ジオメトリ(geom_col())を追加します。
  • coord_polar() を追加して極座標に切り替えます。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Wrangle data into form we want. 
disease_counts <- who_disease %>%
	mutate(disease = ifelse(disease %in% c('measles', 'mumps'), disease, 'other')) %>%
	group_by(disease) %>%
	summarise(total_cases = sum(cases))

ggplot(disease_counts, aes(x = 1, y = total_cases, fill = disease)) +
	# Use a column geometry.
	___ 
	# Change coordinate system to polar and set theta to 'y'.
	___
コードを編集して実行