如何使用matplotlib画一条平行于y = x的线?

时间:2019-12-16 21:57:46

标签: python numpy matplotlib scipy

我想知道如何在距离sigma = 1时在y = x线的上方和下方绘制两条线?

MWE

import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['figure.figsize'] = 8,8
plt.rcParams.update({'font.size': 16})

plt.style.use('ggplot')
%matplotlib inline

x = np.arange(11)
y = x
plt.plot(x,y)

输出

enter image description here

问题

是否有任何numpy / scipy函数在给定距离处绘制y = x线以上和以下的线。 我知道axhline和axvline,但是我不确定如何平行于y = x线绘制。 感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

您可以尝试在上方和下方绘制平行线。

y1 = x + 1
y2 = x - 1
plt.plot(y1,x)
plt.plot(y2,x)
plt.show()

为了获得准确的距离,您必须随后计算所需的偏移量。而不是1使用该偏移量。

编辑 正如@朱利恩正确指出的那样。使用偏移量c = d/sqrt(2)

c = d/sqrt(2) # d = required distance
y1 = x + c
y2 = x - c