Если вы готовы использовать seaborn, этот фрагмент кода работает для вас:
import pandas as pd
import seaborn as sns
DF1 = pd.DataFrame({'index': ['A', 'B', 'C'], 'Number': [110, 22, 52]})
DF2 = pd.DataFrame({'index': ['A', 'B', 'C'], 'Number': [100, 22, 52]})
DF3 = pd.DataFrame({'index': ['A', 'B', 'C'], 'Number': [90, 12, 10]})
DF = pd.concat([DF1, DF2, DF3])
DF['df_num'] = ['1','1','1','2','2','2','3','3','3']
sns.barplot(data = DF, x='index', y='Number', hue='df_num')
Он должен создать этот участок:
![seaborn plot](https://i.stack.imgur.com/kQDMp.jpg)