matplotlib 绘图函数忽略一行
matplotlib plot function ignores one line
我想我在这里犯了一些微不足道的错误,但它一直困扰着我一段时间。我试图使用 matplotlib 绘制一些线,但其中一条线被忽略了。为了确保其他东西不会干扰这条线,我创建了一个只有这三行情节的新脚本,但我仍然没有得到中间线(从(1,1)到(20,20)) .感谢您的帮助,在此先感谢!我已经复制了脚本和下面的输出:
import matplotlib.pyplot as plt
plt.plot([20,1], [1,20])
plt.plot([1,1], [20,20])
plt.plot([20,2], [2,20])
plt.xlim(0, 25)
plt.ylim(0, 25)
plt.gca().set_aspect('equal')
plt.tight_layout()
plt.show()
plot produced
您没有得到一条线,因为起点和终点相同。请记住,为了获得从 (x1,y1) 到 (x2,y2) 的一行,您必须编写 plt.plot([x1,x2],[y1,y2])
。所以我想你想要的是 plt.plot([1,20],[1,20])
所以总共是:
import matplotlib.pyplot as plt
plt.plot([20,1], [1,20])
plt.plot([1,20], [1,20])
plt.plot([20,2], [2,20])
plt.xlim(0, 25)
plt.ylim(0, 25)
plt.gca().set_aspect('equal')
plt.tight_layout()
plt.show()
你是从[1,1]
移动的,意思是在x轴上从点1移动到点1。所以你的水平距离是 0,因为从 1 到 1 本身的距离是 0。你还写了 [20,20]
,这意味着在 y 轴上从点 20 移动到点 20。所以你的垂直距离也是 0 因为从 20 到它本身的距离是 0,这就是你没有得到任何线的原因。
您不会得到 x1、x2 值相等且 y1、y2 值也相等的任何行,因为您的水平和垂直距离均为 0。例如:[1,1][2,2]
、[10,10][15,15]
等等...
在第一种情况下,您因为 [20,1], [1,20]
而排队。这里使用 [20,1]
你已经在 x 轴上从点 20 移动到点 1,所以水平距离为 19。[1,20]
在 y 轴上从点 1 移动到点 20。所以你的垂直距离是 19。所以你得到对角线图
我想我在这里犯了一些微不足道的错误,但它一直困扰着我一段时间。我试图使用 matplotlib 绘制一些线,但其中一条线被忽略了。为了确保其他东西不会干扰这条线,我创建了一个只有这三行情节的新脚本,但我仍然没有得到中间线(从(1,1)到(20,20)) .感谢您的帮助,在此先感谢!我已经复制了脚本和下面的输出:
import matplotlib.pyplot as plt
plt.plot([20,1], [1,20])
plt.plot([1,1], [20,20])
plt.plot([20,2], [2,20])
plt.xlim(0, 25)
plt.ylim(0, 25)
plt.gca().set_aspect('equal')
plt.tight_layout()
plt.show()
plot produced
您没有得到一条线,因为起点和终点相同。请记住,为了获得从 (x1,y1) 到 (x2,y2) 的一行,您必须编写 plt.plot([x1,x2],[y1,y2])
。所以我想你想要的是 plt.plot([1,20],[1,20])
所以总共是:
import matplotlib.pyplot as plt
plt.plot([20,1], [1,20])
plt.plot([1,20], [1,20])
plt.plot([20,2], [2,20])
plt.xlim(0, 25)
plt.ylim(0, 25)
plt.gca().set_aspect('equal')
plt.tight_layout()
plt.show()
你是从[1,1]
移动的,意思是在x轴上从点1移动到点1。所以你的水平距离是 0,因为从 1 到 1 本身的距离是 0。你还写了 [20,20]
,这意味着在 y 轴上从点 20 移动到点 20。所以你的垂直距离也是 0 因为从 20 到它本身的距离是 0,这就是你没有得到任何线的原因。
您不会得到 x1、x2 值相等且 y1、y2 值也相等的任何行,因为您的水平和垂直距离均为 0。例如:[1,1][2,2]
、[10,10][15,15]
等等...
在第一种情况下,您因为 [20,1], [1,20]
而排队。这里使用 [20,1]
你已经在 x 轴上从点 20 移动到点 1,所以水平距离为 19。[1,20]
在 y 轴上从点 1 移动到点 20。所以你的垂直距离是 19。所以你得到对角线图