バイオリン図
バイオリン図(バイオリンず、英: violin plot)は、数値データを描画する手法の一つであり、箱ひげ図の両脇に90度回転させたカーネル密度グラフを付加したものに近い[1]。
概要
[編集]バイオリン図は 箱ひげ図 に似ているが、異なる値のデータに確率密度を表示する点で異なっている。確率密度は、最も単純な場合にヒストグラムとなる。一般にバイオリン図には、箱ひげ図同様、データの中央値を示すマークと四分位範囲を示す箱も描かれる。この箱ひげ図に重ねて描画されるのはカーネル密度推定である。箱ひげ図のようにバイオリン図は複数のカテゴリ間での変数分布の比較に用いられる。例えば日中と夜間の温度分布の比較や、複数の製造業者での車両価格の分布などである。
箱ひげ図との比較
[編集]バイオリン図には箱ひげ図よりも多くの情報が含まれる。箱ひげ図には平均/中央値と四分位範囲という要約統計量のみが含まれるのに対し、バイオリンプロットにはすべての分布データが含まれる。これはデータ分布がmultimodal(複数のピークがある)場合に特に有用である。このような場合、バイオリン図では複数のピークの位置と大きさが明確に表現されるが、これは箱ひげ図では表現されない。バイオリン図の内部には平均(または中央値)と四分位範囲が描かれる。特にサンプルサイズが大きくない場合には、すべてのサンプルデータが点や線として描かれる場合もある。
箱ひげ図よりも多くの情報が含まれ��ものの、バイオリン図はよりマイナーである点が欠点である。知名度が低いため、バイオリン図を知らない人にとっては意味が理解しづらい。このような場合、より分かりやすい代替図としてはヒストグラムを複数描画するか、カーネル密度を描画することが考えられる。
ソフトウェア
[編集]バイオリン図は多くのソフトウェアパッケージで拡張機能として利用することができる。例えばR言語ではライブラリの vioplot, wvioplot, caroline, UsingR, lattice, ggplot2、Stataではアドオンコマンドの vioplot[2]、 Pythonではmatplotlib[3],Plotly[4],Seaborn[5]、Originでの実装[6]などがある。
参考文献
[編集]- ^ “VIOLIN PLOT”. NIST DataPlot. National Institute of Standards and Technology (2015年10月13日). 2017年11月11日閲覧。
- ^ Hintze, Jerry L.; Nelson, Ray D. (1998). “Violin Plots: A Box Plot-Density Trace Synergism”. The American Statistician 52 (2): 181–4. doi:10.1080/00031305.1998.10480559 .
- ^ “violin plots”. What's new in matplotlib. 2017年11月11日閲覧。
- ^ “Violin Plots in Python”. Plotly Python API Library Reference. 2017年11月11日閲覧。
- ^ Waskom, Michael. “Violinplot from a wide-form dataset”. Seaborn: statistical data visualization. 2017年11月11日閲覧。
- ^ “Violin Plot in Origin 2019”. 2018年10月29日閲覧。
外部リンク
[編集]- Stata の Vioplot アドイン
- R でのバイオリン図の例
- seaborn 統計描画ライブラリによる Python の violinplots の例
この記事にはパブリックドメインである、アメリカ合衆国連邦政府が作成した次の文書本文を含む。Dataplot reference manual: Violin plot. アメリカ国立標準技術研究所.