我嘗試從合并的資料框中繪制分組條形圖。在代碼下方,條形圖是堆疊的,我怎樣才能像分組條形圖一樣并排放置它?
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(0)
df1 = pd.DataFrame({
'key': ['A', 'B', 'C', 'D'],
'value':[ 10 ,6, 6, 8]})
df2 = pd.DataFrame({
'key': ['B', 'D', 'A', 'F'],
'value':[ 3, 5, 5, 7]})
df3 = pd.merge(df1, df2, how='inner', on=['key'])
print(df1)
print(df2)
print(df3)
fig, ax = plt.subplots(figsize=(12, 8))
b1 = ax.bar(df3['key'],df3['value_x'])
b2 = ax.bar(df3['key'],df3['value_y'])
pngname = "demo.png"
fig.savefig(pngname, dpi=fig.dpi)
print("[[./%s]]"%(pngname))
電流輸出:

uj5u.com熱心網友回復:
問題是 x 軸資料是相同的,在您的情況下,它不是數字,而是鍵:“A”、“B”、“C”。所以 matplotlib 將它們一個一個地堆疊到另一個上。
有一個簡單的方法可以解決它,因為一些在線教程顯示
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/354231.html
標籤:matplotlib
下一篇:matplotlib多Y軸熊貓圖
