我正在使用图例标题(通过matplotlib),该标题放置在图例条目上方,但是我想在情节下创建一个很长的稀薄图例。 ncol
将创建一行图例条目,但是我不知道如何在同一行上获得图例标题。
MWE
import numpy as np
%matplotlib notebook
import matplotlib
from matplotlib import pyplot as plt
X1 = np.random.rand(50)
X2 = np.random.rand(50)
Y = np.random.rand(50)
plt.plot(X1,Y,X2,Y)
plt.legend(labels = ['X1','X2'],ncol=2,title='legend title:',loc=3)
我希望图例看起来像
传奇标题:----- X1 ----- X2
代替
图例标题:
----- X1 ----- X2
答案 0 :(得分:1)
这是一个代码-
labels =["X1", "X2"]
fig, ax = plt.subplots()
val = [X1, X2]
for i in range(2):
ax.plot(val[i], Y, label=labels[i]) # Plotting one at a time
h, l = ax.get_legend_handles_labels() # Extracting handles and labels
ph = [plt.plot([],marker="", ls="")[0]] # Canvas
handles = ph + h
labels = ["legend title:"] + l # Merging labels
plt.legend(handles, labels, ncol=3)
plt.show()
有关更多信息,请参见here