matplotlib 如何消除线段两端的填充

zdwk9cvp  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(101)

我特灵创建一个水平条形图叠加在现有的matplotlib图排序。我想要一个图例的酒吧。
这里有一个例子

import matplotlib.pyplot as plt
fig, ax = plt.subplots()
y_data = (0,0,1,0)
ax.step((0., 0.1, 0.2, 0.6, 0.8, 1.), (0., 0., 0.5, 1., 0.5, 0.), where='pre')
ax.plot((0.1,0.6),(0.1,0.1), color = 'red', linewidth = 10, label = "line 1")
ax.plot((0.2,0.8),(0.2,0.2), color = 'green', linewidth = 10, label = "line 2")
ax.set_ylim(0,1); ax.set_xlim(0,1)
ax.legend(loc='center left', bbox_to_anchor=(1, 0.5))
plt.tight_layout()

字符串
线段开始在直线端点的坐标之前一点,结束在直线端点的坐标之后一点。数量似乎取决于线的粗细。如何消除开始和结束处的多余部分?我想画矩形,但我怎么做图例?

3wabscal

3wabscal1#

使用Axes.hlines

ax.hlines(0.1, 0.1, 0.6, color='red', lw=10, label='line1')
ax.hlines(0.2, 0.2, 0.8, color='green', lw=10, label='line2')

字符串
输出量:


的数据

相关问题