Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在matplotlib basemap中打印彩色编码标记_Python_Matplotlib_Matplotlib Basemap - Fatal编程技术网

Python 在matplotlib basemap中打印彩色编码标记

Python 在matplotlib basemap中打印彩色编码标记,python,matplotlib,matplotlib-basemap,Python,Matplotlib,Matplotlib Basemap,我想在地图上绘制以下变量: Lons,经度列表,Lats,纬度列表和Vals,每个位置的值列表 为了绘制位置,我做了一个简单的 x,y=Mymap(Lons,Lats) Mymap.scatter(x,y,marker='o',color='red') Q:如何最好地将我的VAL转换成一个颜色列表(热图)并传递到scatter,以便每个x,y对都能获得与颜色匹配的值 basemap文档相当缺乏,并且没有一个示例符合我的目的 我可能会在整个lat、Lons和Vals中循环,但考虑到basemap

我想在地图上绘制以下变量:
Lons
,经度列表,
Lats
,纬度列表和
Vals
,每个位置的值列表

为了绘制位置,我做了一个简单的

x,y=Mymap(Lons,Lats)
Mymap.scatter(x,y,marker='o',color='red')
Q:如何最好地将我的
VAL
转换成一个颜色列表(热图)并传递到
scatter
,以便每个
x,y
对都能获得与颜色匹配的值

basemap文档相当缺乏,并且没有一个示例符合我的目的

我可能会在整个
lat
Lons
Vals
中循环,但考虑到basemap有多慢,我宁愿避免这样。我已经绘制了大约800张地图,将其增加到大约100万张可能需要几年的时间。

简单地指的是,在这里可以找到参数c(我的重点):

c:颜色或颜色顺序,可选,默认

c可以是单色格式字符串,也可以是长度为N的颜色规范序列,或要使用kwargs指定的cmap和规范映射到颜色的N个数字序列(见下文)。请注意,c不应该是单个数字RGB或RGBA序列,因为它与要进行颜色映射的值数组不可区分。然而,c可以是一个二维数组,其中的行是RGB或RGBA

因此,如果只是将
vals
传递给c,matplotlib应该将值转换为标准颜色映射或a上的颜色。显示映射到可以使用的值的颜色

示例代码:

import matplotlib.pyplot as plt

lons = range(50)
lats = range(25, 75)
vals = range(50,100)

plt.scatter(lons, lats, c=vals, cmap='afmhot')
plt.colorbar()
plt.show()

谢谢,行得通。我只是查阅了主要文档,因为我认为api部分是内部的,只有当你想真正改变一些东西的时候才有用。