plt.bar()を使った基本的な棒グラフ
最もシンプルなmatplotlib棒グラフに必要な引数は、x位置と高さの2つだけです。以下が基本的な構文です:
plt.bar()の主要パラメータ
matplotlibのbar()関数のパラメータを理解することで、チャートの外観を完全に制御できます:
- x - 棒のX座標(文字列、数値、配列のいずれか)
- height - 各棒の高さ(データ値)
- width - 棒の幅(デフォルト0.8、グループ化された棒で調整)
- bottom - 棒の底辺のY座標(積み上げに使用)
- color - 棒の塗りつぶし色(単色または棒ごとのリスト)
- edgecolor - 棒の境界線の色
- linewidth - 境界線の太さ
- align - xティックに対する棒の配置('center' または 'edge')
- label - 凡例のラベル
plt.barh()を使った横棒グラフ
長いカテゴリラベルやランク付けされたデータには、横棒の方が適しています。同様のパラメータでplt.barh()を使用します:
グループ化(クラスタ化)棒グラフ
複数の系列を並べて比較するには、x位置をオフセットしてグループ化された棒を作成します:
積み上げ棒グラフ
'bottom'パラメータを使用して棒を積み上げ、部分と全体の関係を表示します:
スタイリングとカスタマイズ
Matplotlibは豊富なスタイリングオプションを提供しています。以下が主要なカスタマイズ技術です:
- 色:16進コード('#3498db')、名前付き色('steelblue')、またはカラーマップを使用
- plt.style.use('seaborn-v0_8') - 定義済みのスタイルテーマを適用
- ax.spines['top'].set_visible(False) - チャートの境界線を削除
- plt.grid(axis='y', alpha=0.3) - 薄いグリッド線を追加
- カスタムフォント:plt.rcParams['font.family'] = 'sans-serif'
- 図のサイズ:plt.figure(figsize=(幅, 高さ))
- エクスポートのDPI:plt.savefig('chart.png', dpi=300, bbox_inches='tight')
不確実性のためのエラーバー
エラーバーを追加して、データの変動性や信頼区間を表示します:
チャートのエクスポート
さまざまなユースケースに合わせて、matplotlibチャートを様々な形式で保存します:
- PNG(ラスター):plt.savefig('chart.png', dpi=300) - Web/プレゼンテーションに最適
- PDF(ベクター):plt.savefig('chart.pdf') - 印刷/出版物に最適
- SVG(ベクター):plt.savefig('chart.svg') - Webスケーラビリティに最適
- bbox_inches='tight'を使用して余分な空白を削除
- transparent=Trueで背景を透明に設定
- facecolorパラメータで背景色を制御
一般的な問題と解決策
matplotlib棒グラフの頻繁な問題をトラブルシューティングします:
- ラベルの重なり:plt.xticks(rotation=45, ha='right')で回転
- 棒が細すぎる/太すぎる:plt.bar()のwidthパラメータを調整
- 凡例がチャートを覆っている:loc='upper left'またはbbox_to_anchorを使用
- 色が表示されない:plt.show()またはplt.savefig()を呼び出していることを確認
- 多数のチャートでのメモリ問題:各保存後にplt.close()を使用
ChartGen.ai:コード不要の代替案
matplotlibは強力なカスタマイズを提供しますが、Pythonの知識とコーディング時間が必要です。ChartGen.aiはデータからプロフェッショナルな棒グラフを瞬時に生成します - プログラミングは不要です。データを貼り付けるか、チャートを説明するだけで、洗練されたPNGを数秒でエクスポートできます。
- Pythonのインストールやコーディングは不要
- コードを書いてデバッグする代わりに即結果
- AIが自動的にプロフェッショナルなスタイリングを適用
- クイックな可視化やプレゼンテーションに最適
- PNGエクスポート付きで無料使用可能
