0

我正在尝试用 seaborn 绘制一个 swarmplot,但我正在为情节的传说而苦苦挣扎,我设法改变了它的位置,如果这个数字,但现在它被裁剪并且没有显示任何信息:

在此处输入图像描述

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

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

我没有运气改变了人物的大小

plt.figure(figsize=(12, 10))

我也尝试过tight_layout(),但它只是从情节中删除了图例。

关于如何使它很好地出现在情节的侧面而不在侧面或底部进行任何裁剪的任何想法?

谢谢

4

2 回答 2

3

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

这里的相关论点是right图的侧面,所以plt.subplots_adjust(right=0.7)将是一个好的开始。0.7意味着轴的右侧部分占总图形大小的 70%,这应该为图例提供足够的空间。
然后,您可能希望根据需要更改该数字。

于 2017-02-09T21:57:03.537 回答
1

你可以这样做。

# 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()

结果在这里

资源

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

于 2018-12-23T02:30:46.977 回答