我想绘制平行的对角线。第二条对角线应比第一条对角线低5%,第三条对角线应比第一条对角线高5%。我不想使用轴限制,因为我的数据不稳定,易变。因此,我想使用实际限制。我的代码工作正常并产生输出。无论这是正确的方法,我都不知道。我的意思是,低于1200的5%为1200 * 0.95,但是如何在接近原点的情况下降低5%。在我的代码中,我反复尝试使用了50。
我的代码和输出:
plt.plot([0,1200],[50,1200*1.05],'k--',linewidth=2)
plt.plot([0,1200],[0,1200],'k--',linewidth=2)
plt.plot([50,1200],[0,1200*0.95],'k--',linewidth=2)
答案 0 :(得分:1)
要绘制对角线,而不考虑当前的 x / y 限制, 最自然的方法是:
运行以下示例代码:
fig = plt.figure()
ax = plt.subplot(xlim=(0, 1250), ylim=(0, 1200))
ax.text(0.05, 0.95, 'Diagonal lines', transform=ax.transAxes, fontsize=12, va='top')
# Diagonal
plt.plot([0, 1], [0, 1], 'k--', linewidth=1, transform=ax.transAxes)
# 5 % down
plt.plot([0.05, 1], [0, 0.95], 'r--', linewidth=1, transform=ax.transAxes)
# 5 % up
plt.plot([0, 0.95], [0.05, 1], 'g--', linewidth=1, transform=ax.transAxes)
plt.show()
我得到了以下情节:
我故意使用不同颜色的线条,以方便识别。
使用此代码进行实验,每次更改 xlim 和 ylim 所有三行都应该位于相同的位置。