在Python绘图中连接两个点的线
我需要做的基本上是,在一个给定的边界(boundingBox)内画一个NxN的网格,并为此写一个函数。我的想法是,先画水平线和垂直线,然后通过把边界的范围除以N来计算每条线的宽度和高度。接着,我想用pyplot来画这些线,使用线的起点和终点,但在这方面我遇到了一些困难。我现在有的想法还不够成熟。boundingBox其实就是一些坐标。
def drawGridLines(boundingBox, N):
lonrange = boundingBox[1][0] - boundingBox[0][0]
latrange = boundingBox[1][1] - boundingBox[0][1]
lonpieces = lonrange/N
latpieces = latrange/N
while (lonpieces <= N):
lon = lonpieces
pylab.plot(lon)
lonpieces = lonpieces + (lonrange/N)
1 个回答
1
我对Python和Pylab了解不多,所以可能不能完全回答你的问题,但我可以给你一些建议。看起来你想要在每次循环中画一条线。那样的话,可能需要用到两个循环,而不仅仅是一个。
我想你的第一个循环可能长这样:
//introduce some sort of counter variable
count =0
while(count <= N):
//draw a vertical line at appropriate spot
drawSpot = boundingBox[0][0] + count * lonPieces
count = count +1
而你的第二个循环可能长这样:
count =0
while(count <= N):
//draw a horizontal line at appropriate spot
drawSpot = boundingBox[0][1] + count * latPieces
count = count +1
我可能把水平和垂直搞混了,但我希望这个思路是清楚的。如果你有任何问题,请留言。祝你好运!