下記質問(解決済)に派生しての質問になります。
https://teratail.com/questions/353631
棒グラフの見た目は変えずに、C列に2種類のデータがあるとして、グラフの中身をスタックして表示したいと考えています。よって、下記の通り挑戦してみましたが、うまくいきません… イメージとしては、上記質問で回答頂いたグラフイメージ内にC列の内容にあわせて、スタックされることを想定しているのですが、アドバイス頂けると大変助かります。
import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import numpy as num # テストデータ s = """A,B,C T,Asia,2020 H,Asia,2021 N,Asia,2020![ T,EU,2021 H,EU,2020 T,USA,2021""" df = pd.read_csv('テスト') s = df.groupby('A').count()['B'].reset_index().set_index('A') s = s.sort_values(['B']) # 降順に df["2020"] = num.where(df['C']!= '2020', 0, 1) df["2021"] = num.where(df['C']!= '2021', 0, 1) df.plot( kind = 'barh', y = ["2020","2021"], stacked = True, color = ['r','g'], legend = "C") plt.ylabel("Company") plt.savefig('plot.png')
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/11 00:34