Python Matplotlib如何在图中添加圆角边?
我想创建和我得到的一样的可视化效果,这已经非常好了,但我想知道如何在我的图形(灰色部分)中创建圆角?Python Matplotlib如何在图中添加圆角边?,python,matplotlib,figure,Python,Matplotlib,Figure,我想创建和我得到的一样的可视化效果,这已经非常好了,但我想知道如何在我的图形(灰色部分)中创建圆角? 我已经试图找到一种使用Fancybox的方法,但没有成功。我还尝试了seaborn library,但无法获得相同的条形图结果和相应的自定义文本。 如果有人有主意?非常感谢。 以下是我使用的代码: import matplotlib.pyplot as plt #Commun parameters day_of_week = final_result_table[final_result_ta
我已经试图找到一种使用Fancybox的方法,但没有成功。我还尝试了seaborn library,但无法获得相同的条形图结果和相应的自定义文本。
如果有人有主意?非常感谢。
以下是我使用的代码:
import matplotlib.pyplot as plt
#Commun parameters
day_of_week = final_result_table[final_result_table['s__platform'] == 'Android']['day_text'].values[0]
import matplotlib.font_manager #To change the font name
import matplotlib.patheffects as path_effects #For Title-text shadow
#Test dataset
test_acquisition = pd.DataFrame({
"iOS":[15222,750],
"Android":[18752, 1520]
}, index=["dau", "nb_downloads"]
)
#Test data
nb_downloads = test_acquisition.iloc[1,0] + test_acquisition.iloc[1,1]
nb_downloads_var = (final_result_table[final_result_table['s__platform'] == 'Android']['WoW_var_nb_downloads'].values[0])
nb_players = test_acquisition.iloc[0,0] + test_acquisition.iloc[0,1]
nb_players_var = (final_result_table[final_result_table['s__platform'] == 'Android']['WoW_var_dau'].values[0])
#Create bar plots
acquisition = test_acquisition.apply(lambda x: x*100/sum(x), axis=1)
acquisition.plot(kind="barh", stacked=True, color=['#7ae04a', '#f7a059'], legend=None)
#Add dynamic and custom text
#For downloads
plt.text(57, 1, '%s Downloads'%nb_downloads, ha="right", va="center", fontsize=15)
if nb_downloads_var > 0:
plt.text(59, 0.96, '%s'%nb_downloads_var, ha="left", va="center", fontsize=10, fontstyle='italic', color='green' )
else:
plt.text(59, 0.96, '%s'%nb_downloads_var, ha="left", va="center", fontsize=10, fontstyle='italic', color='red' )
plt.text(67, 0.96, 'Last %s'%day_of_week, ha="left", va="center", fontsize=10, fontstyle='italic')
#For DAU
plt.text(57, 0, '%s Players'%nb_players, ha="right", va="center", fontsize=15)
if nb_players_var > 0:
plt.text(59, -0.04, '%s'%nb_players_var, ha="left", va="center", fontsize=10, fontstyle='italic', color='green' )
else:
plt.text(59, -0.04, '%s'%nb_players_var, ha="left", va="center", fontsize=10, fontstyle='italic', color='red' )
plt.text(67, -0.04, 'Last %s'%day_of_week, ha="left", va="center", fontsize=10, fontstyle='italic')
#Customize figure
plt.title("ACQUISITION", fontsize=30, fontname='Liberation Sans Narrow', path_effects=[path_effects.withSimplePatchShadow()])
plt.rcParams['figure.facecolor'] = '#dbdbd9'
plt.axis('off')
#plt.savefig('acquisition.png')