Python3.6-在Matplotlib上绘制横向/纵向坐标

Python3.6-在Matplotlib上绘制横向/纵向坐标,python,matplotlib,Python,Matplotlib,这是我第一次使用Matplotlib。我在两个列表中有一系列的纬度和经度坐标,我想以一种有意义的方式表示它们。我不想将Basemap用于 我试图使用Matplotlib以有意义的方式表示这些内容 import numpy as np import matplotlib.pyplot as plt fig = plt.figure() plt.scatter(lat, long) plt.show() 不过,我的数字如下: 我无法设置轴以获得这些坐标的有意义表示。如何做到这一点?我做错了什么

这是我第一次使用Matplotlib。我在两个列表中有一系列的纬度和经度坐标,我想以一种有意义的方式表示它们。我不想将Basemap用于

我试图使用Matplotlib以有意义的方式表示这些内容

import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
plt.scatter(lat, long)
plt.show()
不过,我的数字如下:

我无法设置轴以获得这些坐标的有意义表示。如何做到这一点?我做错了什么

我在找这样的东西:

import numpy as np
import matplotlib.pyplot as plt

N = 50
x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y)
plt.show()
我得到了预期的结果

我也尝试过


编辑:

根据以下评论:

import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
plt.scatter(lat, long)
plt.axis('square')
plt.show()

如注释中所述,将类型更改为浮动:

import numpy as np
import matplotlib.pyplot as plt

lat = np.array(['35.905333', '35.896389', '35.901281', '35.860491', '35.807607', 
'35.832267', '35.882414', '35.983794', '35.974463', '35.930951'], dtype=float)
long = np.array(['14.471970', '14.477780', '14.518173', '14.572245', '14.535320', 
'14.455894', '14.373217', '14.336096', '14.351006', '14.401137'], dtype=float)

fig, ax = plt.subplots(figsize=(10, 6))
ax.scatter(lat, long)
# ax.axis('equal')
plt.show()

尝试执行
plt.axis('equal')
plt.axis('sqaure')
以获得所需的效果。感谢您的评论,但是这并没有正确设置轴。我还尝试设置特定的x和y范围,但这不起作用。您的数字是字符串。将它们转换为浮动您需要更改列表的类型
lat
long
(也可以是long的名称)。试试看,
lat=np.array(['35.905333','35.896389','35.901281','35.860491','35.807607','35.832267','35.882414','35.983794','35.974463','35.930951',dtype=float)
@DavidG,不敢相信我忽略了这一点。从文件中读取数据,但未完成转换。它起作用了。谢谢,也
ax.scatter(long,lat)
实际表示从地图上获取点的方式也许你的答案足以满足OP的目标,但是(但是)地理坐标应该被投影。。。
import numpy as np
import matplotlib.pyplot as plt

lat = np.array(['35.905333', '35.896389', '35.901281', '35.860491', '35.807607', 
'35.832267', '35.882414', '35.983794', '35.974463', '35.930951'], dtype=float)
long = np.array(['14.471970', '14.477780', '14.518173', '14.572245', '14.535320', 
'14.455894', '14.373217', '14.336096', '14.351006', '14.401137'], dtype=float)

fig, ax = plt.subplots(figsize=(10, 6))
ax.scatter(lat, long)
# ax.axis('equal')
plt.show()