http://matplotlib.org/examples/api/line_with_text.html显示如何绘制带有线条标签的线条。 即使用户在交互式窗口中放大或缩小,标签也会保持在正确的位置。
但是,如果我绘制了几条重叠的行,那么一行中的文本标签可能会在另一行后面。
我可以将所有行标签放在所有行的前面吗?如何实现这一目标。
在MyLine的构造函数中使用self.text = mtext.Text(0, 0, '', zorder=100)
无济于事。
line.text.set_zorder(10000)
也无济于事。
从http://matplotlib.org/examples/api/line_with_text.html采取并修改(matplotlib 1.5.1 - License)
我没有将MyLine类复制到下面的代码中。它在上面的网址。
# The code below may be
# Copyright (c) 2012-2013 Matplotlib Development Team; All Rights Reserved
# used under the Matplotlib license and modified
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.lines as lines
import matplotlib.transforms as mtransforms
import matplotlib.text as mtext
#Insert MyLine class from
#http://matplotlib.org/examples/api/line_with_text.html here.
fig, ax = plt.subplots()
for _ in range(20):
x, y = np.random.rand(2, 5)
line = MyLine(x, y, mfc='red', ms=12, label='line label')
line.text.set_color('red')
line.text.set_fontsize(16)
ax.add_line(line)
plt.show()
在图片中,某些标签前面有一些线条。 如何在每条线的前面以所有标签都是z顺序的方式为每条线绘制多条线条?