我必须绘制2条线,然后测量它们之间的绝对距离。然后该距离成为图例的标签。 伪代码看起来像这样:
for line in file:
# extract data here
sample = sns.kdeplot(data)
perfect_template = sns.kdeplot(perfect_template_data)
sample_line = sample.get_lines()[iterate].get_data()
perfect_line = perfect_template.get_lines()[iterate]get_data()
absolute_diff = sum(abs(np.diff(zip(sample_line, perfect_line))))
label = absolute_diff
sample = sns.kdeplot(data, linewidth=1, label=label)
plt(legend)
pp.savefig()
这需要我两次绘制sns.kdeplot
。
有没有办法将标签添加到初始sns.kdeplot
而无需重新绘图?
答案 0 :(得分:1)
您可以像这样使用set_label()
:
sample.set_label(label)
即。最小的例子:
x = np.linspace(0, 2*np.pi)
y = np.sin(x)
y2 = np.sin(2*x)
first_line, = plt.plot(x, y)
plt.plot(x, y2)
first_line.set_label('First line')
plt.legend()