use*_*668 6 python plot matplotlib
matplotlib
有没有类似于MATLAB的行扩展的功能?
我基本上是在寻找一种将线段延伸到绘图的方法。我目前的情节是这样的。
在查看了另一个问题并应用了公式之后,我能够将其放到这里,但它看起来仍然很混乱。
这里有人有神奇的公式吗?
尝试自己编写,因为我认为 matplotlib 中不存在这种情况。这是一个开始,您可以通过添加半无限等来改进
import matplotlib.pylab as plt
import numpy as np
def extended(ax, x, y, **args):
xlim = ax.get_xlim()
ylim = ax.get_ylim()
x_ext = np.linspace(xlim[0], xlim[1], 100)
p = np.polyfit(x, y , deg=1)
y_ext = np.poly1d(p)(x_ext)
ax.plot(x_ext, y_ext, **args)
ax.set_xlim(xlim)
ax.set_ylim(ylim)
return ax
ax = plt.subplot(111)
ax.scatter(np.linspace(0, 1, 100), np.random.random(100))
x_short = np.linspace(0.2, 0.7)
y_short = 0.2* x_short
ax = extended(ax, x_short, y_short, color="r", lw=2, label="extended")
ax.plot(x_short, y_short, color="g", lw=4, label="short")
ax.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)
我刚刚意识到你的地块上有一些红点,这些重要吗?无论如何,我认为到目前为止您的解决方案缺少的要点是将绘图限制设置为之前存在的绘图限制,否则,正如您所发现的,它们会被扩展。
归档时间: |
|
查看次数: |
12519 次 |
最近记录: |