n00*_*00b 4 python matplotlib python-3.x
我正在尝试matplotlib从Python 3中使用类似以下所示的图像:
这里已经提出了类似的问题,但是接受的答案不足以满足我的需要。我需要在虚线中间添加文本(可以使用plt.axvline()函数进行绘制)。
这是我尝试过的
import matplotlib.pylab as plt
plt.hist(some_data)
plt.axvline(0.5, color='k', linestyle='--')
plt.text(0.5, 0.5, 'Some Text', ha='center', va='center',rotation='vertical')
plt.show()
Run Code Online (Sandbox Code Playgroud)
如果我可以将此文本放在虚线的中间,那将会很棒。
这不是解决方案,而是更多的解决方法。您可以尝试设置文本的背景色,或使用特定的颜色向其添加边框以使其黯淡。这将使文本内联显示。
您可以这样实现:
plt.text(0.5, 0.5, 'Some Text', ha='center', va='center',rotation='vertical', backgroundcolor='white')
Run Code Online (Sandbox Code Playgroud)
和
plt.text(0.5, 0.5, 'Some Text', ha='center', va='center',rotation='vertical', bbox={'facecolor':'white', 'pad':5})
Run Code Online (Sandbox Code Playgroud)
当然,当将这条线叠加在其他颜色的直方图上时,就会出现问题,然后您必须将背景或框的颜色与直方图进行匹配。这将显示如下内容:
| 归档时间: |
|
| 查看次数: |
725 次 |
| 最近记录: |