我想在 seaborn 中創建一個帶有自定義背景顏色的圖,并在其上繪制一些白色的箱線圖。相反,當它們設定為白色時,它們基本上是透明的。
這是我的代碼:
import seaborn as sns
import matplotlib.pyplot as plt
import pandas
with open('Data_Figure.csv', 'r') as handle:
data_plot = pandas.read_csv(handle, sep='\t')
fig, ax = plt.subplots(figsize=(4,6), dpi=600)
ax.axvspan(-0.5, 0.5, facecolor='#FFFFCC', alpha=0.3)
ax.axvspan(0.5, 1.5, facecolor='#FFE600', alpha=0.3)
ax.axvspan(1.5, 2.5, facecolor='#999900', alpha=0.3)
g1 = sns.boxplot(x="Group", y="ORIG – MTP 405nm average", hue="Type", palette = ['w'],
fliersize=0, width=0.5, medianprops=dict(color="red", alpha=1), boxprops=dict(linewidth=1, facecolor='w', edgecolor='k', alpha=1),
whiskerprops=dict(linewidth=0.75, color='k', alpha=1), capprops=dict(linewidth=0.5, color='k', alpha=1),
data=data_plot, ax=ax)
plt.legend()
相反,我得到以下資訊。以盒子內部為背景。也許我應該使用不同的方法來創建背景?或者應該有關于層順序的規范?

uj5u.com熱心網友回復:
框有zorder0 而黃色背景補丁有zorder1,因此將繪制在框上。
您可以指定補丁的 zorder,例如將其設定為 -1:
ax.axvspan(-0.5, 0.5, facecolor='#FFFFCC', alpha=0.3, zorder=-1)
ax.axvspan(0.5, 1.5, facecolor='#FFE600', alpha=0.3, zorder=-1)
ax.axvspan(1.5, 2.5, facecolor='#999900', alpha=0.3, zorder=-1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/350090.html
標籤:Python matplotlib 颜色 海生 箱形图
