【发布时间】:2019-06-26 13:48:00
【问题描述】:
我正在尝试使用底图在 matplotlib 中的 2 个不同 X 和 Y 点之间绘制多条线。
import matplotlib.pyplot as plt
import numpy as np
Map=pd.read_excel(r'file.xlsx')
lat=Map['Start Latitude']
long=Map['Start Longitude']
lat1=Map['Fin Latitude']
long2=Map['Fin Longitude']
x,y=m(lon.values,lat.values)
plt=m.scatter(x,y, marker="o", latlon=False)
例如:
Line1 would be between 1x,1y and 1x1,1y1
Line3 would be between 2x,2y and 2x1,2y1
Line3 would be between 3x,3y and 3x1,3y1
etc
其中“x”、“y”、“x1”和“y1”位于不同的列中(“起始纬度”、“起始经度”、“fin latitude”、“fin longitude”)。
会有100多个不同的行
我可以在上面绘制“起始纬度”和“起始经度”(使用x,y=m(lon.values,lat.values) 和plt=m.scatter(x,y, marker="o", latlon=False),但无法绘制第二个点并将一条线连接到它。
任何建议将不胜感激!谢谢你。
【问题讨论】:
-
目前你的问题太宽泛了。您没有提供任何数据,因此人们必须首先创建一个示例数据集,然后为您从头开始编写代码。也许,由于您是新的贡献者,我建议您阅读How to create a Minimal, Complete, and Verifiable example。此外,您的问题中有一些未定义的内容。
-
什么是
m?你在用basemap吗?根据我的经验,这与普通的matplotlib完全不同,应该得到这个标签。 -
一般来说,您使用
plt.plot([x1,x2], [y1,y2])绘制一条连接点的线。您可以将其放在 for 循环中,作为最简单的情况,循环将运行您的 x,y 值,可以使用np.loadtxt例如从包含数据的文件中读取这些值。 -
@roganjosh:不幸的是,我还是素食主义者;)
-
如您所见,这在评论中难以辨认。您可以edit您的问题以包含相关信息。
标签: python matplotlib mapping matplotlib-basemap