如何设置seaborn swarmplot尺寸并更改图例位置?

时间:2017-02-09 20:48:00

标签: python matplotlib seaborn

我试图用seaborn策划一个swarmplot但是我正在与情节的传说挣扎,我设法改变它的位置,如果这个数字,但现在它被裁剪,没有显示任何信息:

enter image description here

我用以下方式移动了传奇:

impl From

我没有运气改变了图的大小

plt.legend(bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.)

还尝试了tight_layout(),但它只是从图中删除了图例。

关于如何使它出现在情节一侧的任何想法都没有在侧面或底部进行任何裁剪?

谢谢

2 个答案:

答案 0 :(得分:3)

plt.tight_layout()尝试优化空间时,不会考虑图例。但是,您可以手动设置空格 plt.subplots_adjust()

这里的相关论点是图中的right侧,因此plt.subplots_adjust(right=0.7)将是一个良好的开端。 0.7表示轴的右侧部分占总图形尺寸的70%,这应该为图例提供足够的空间。
然后,您可能希望根据需要更改该数字。

答案 1 :(得分:0)

您可以做到这一点。

# Import necessary libraries
import seaborn as sns
import matplotlib.pyplot as plt

# Initialize Figure and Axes object
fig, ax = plt.subplots(figsize=(10,4))

# Load in the data
iris = sns.load_dataset("iris")

# Create swarmplot
sns.swarmplot(x="species", y="petal_length", data=iris, ax=ax)

# Show plot
plt.show()

Result is here

Source

(为时已晚,也许我知道,但我想分享已经找到的东西)