from matplotlib import pyplot as plt
import pandas as pd
import seaborn as sns
df = pd.DataFrame({})
df[soi_name]=soi
df[outcome_name]=outcome
soi,outcome = utils.format_cols(soi, outcome,'continuous',agg_method)
sns.factorplot(data=df, x=outcome_name,y=soi_name,hue=outcome_name,kind='box')
plt.savefig(ofilepath)
因此,用于生成此箱图的代码段就在上面。结果是二元浮点型熊猫系列。 soi是浮动型熊猫系列。这个x轴移位发生在箱形图和小提琴图上。当我使用以下代码生成因子图:
df = pd.DataFrame({})
df[soi_name]=soi
df[outcome_name]=outcome
sns.factorplot(data=df, x=outcome_name,y=soi_name,hue=outcome_name)
plt.savefig(ofilepath)
我得到了我想要的输出。为什么箱形图的转变可能会发生的任何想法?
你有两个不同的hue
s,这样第一个被绘制在位置的左边,第二个被绘制在位置的右边。这通常是期望的,参见例如这张来自the documentation的情节
import matplotlib.pyplot as plt
import seaborn as sns
tips = sns.load_dataset("tips")
ax = sns.boxplot(x="day", y="total_bill", hue="time",
data=tips, linewidth=2.5)
plt.show()
在这里,你不希望蓝色和橙色的箱形图重叠,是吗?
但是,如果你愿意,你可以。为此目的使用dodge=False
参数。
import matplotlib.pyplot as plt
import seaborn as sns
tips = sns.load_dataset("tips")
ax = sns.boxplot(x="day", y="total_bill", hue="time",
dodge=False, data=tips, linewidth=2.5)
plt.show()