我想在图中包括一个图例,该图例将所有线显示为实线,即使相应的曲线使用linstyle'-'。有
plt.plot(x, y, linestyle='--')
plt.legend(loc=0)
plt.show()
因此,上图的图例应显示一条实线。
答案 0 :(得分:2)
您可以明确tell ax.legend
显示什么,不显示什么。使用单独的Line2D
对象(请参见here),即使绘制的虚线是虚线,也可以使图例中的线变为实线。这是一个工作示例:
from matplotlib import pyplot as plt
from matplotlib.lines import Line2D
import numpy as np
fig, ax = plt.subplots()
x = np.linspace(0,2*np.pi,100)
y = np.sin(x)
ax.plot(x,y,'r--')
line = Line2D([0,1],[0,1],linestyle='-', color='r')
ax.legend([line],['solid line'])
plt.show()
结果看起来像这样:
答案 1 :(得分:0)
您也可以只在情节中添加一个虚拟条目:
dummy, = plt.plot(x[0], y[0], color='black', linestyle='solid')
然后将 dummy
添加到您的图例中。