ホームページ >バックエンド開発 >Python チュートリアル >Matplotlib を使用してグループ化棒グラフに棒を正しく配置し、注釈を追加する方法
グループ化棒グラフのプロットと注釈
このガイドでは、グループ化棒グラフの作成時に matplotlib でよく発生する問題に対処します。提供されたコードは、さまざまなデータ サイエンス分野に対する回答者の関心を、関心のレベル (非常に興味がある、やや興味がある、興味がない) を表すバーで視覚化することを目的としています。
問題分析
提供されたコードの問題はバーの幅の計算にあります。コードは、プロット内のバーの数を考慮せずに、w=0.8 を設定します。バーを正しく配置するには、w をバーの数で割る必要があります。
解決策
この問題を解決するには、バーの数を考慮してバーの幅の計算を調整します。プロット内のバー。より効率的なアプローチは、pandas.DataFrame.plot メソッドを使用して注釈付きのプロットを生成することです。
DataFrame.plot を使用した更新されたコード
<code class="python">import pandas as pd import matplotlib.pyplot as plt # Create the DataFrame file = "https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/coursera/Topic_Survey_Assignment.csv" df = pd.read_csv(file, index_col=0) # Calculate percentages df = df.div(2233) # Plot the grouped bar chart ax = df.plot.bar(color=['#5cb85c', '#5bc0de', '#d9534f'], figsize=(20, 8), rot=0, ylabel='Percentage', title="The percentage of the respondents' interest in the different data science Area") # Add annotations for p in ax.patches: ax.annotate(f'{p.get_height():0.2f}', (p.get_x() + p.get_width() / 2., p.get_height()), ha='center', va='center', xytext=(0, 10), textcoords='offset points')</code>
出力:
[修正された棒グラフの画像]
この更新されたコードは、各棒のパーセンテージを示す注釈が付いた、適切に配置されたグループ化棒グラフを生成します。
以上がMatplotlib を使用してグループ化棒グラフに棒を正しく配置し、注釈を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。