我想在我的图中包含一个图例,即使相应的曲线使用 linstyle '--',它也会将所有线显示为实线。有没有
plt.plot(x, y, linestyle='--')
plt.legend(loc=0)
plt.show()
Run Code Online (Sandbox Code Playgroud)
因此,上图的图例应显示一条实线。
您可以明确告诉 ax.legend显示什么和不显示什么。使用单独的Line2D对象(请参见此处),即使绘制的线是虚线,也可以使图例中的线成为实线。这是一个工作示例:
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()
Run Code Online (Sandbox Code Playgroud)
结果如下: