matplotlib集合线宽映射?
我正在道路网络的matplotlib等中创建一些GIS样式的绘图,因此我使用LineCollection来存储和表示所有道路以及相应的颜色。这很好,我根据标准和以下地图为道路上色:matplotlib集合线宽映射?,matplotlib,Matplotlib,我正在道路网络的matplotlib等中创建一些GIS样式的绘图,因此我使用LineCollection来存储和表示所有道路以及相应的颜色。这很好,我根据标准和以下地图为道路上色: from matplotlib.colors import ListedColormap,BoundaryNorm from matplotlib.collections import LineCollection cmap = ListedColormap(['grey','blue','green','yell
from matplotlib.colors import ListedColormap,BoundaryNorm
from matplotlib.collections import LineCollection
cmap = ListedColormap(['grey','blue','green','yellow','orange','red','black'])
norm = BoundaryNorm([0,0.5,0.75,0.9,0.95,1.0,1.5,100],cmap.N)
roads = LineCollection(road_segments, array=ratios, cmap=cmap, norm=norm)
axes.add_collection(roads)
这很好,但是我真的希望以类似于颜色贴图的方式定义线宽-每种颜色的线宽范围为0.5到5
有人知道这样做的聪明方法吗?关键词
线宽
import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection
axes = plt.axes()
roads = LineCollection([
[[0, 0], [1, 1]],
[[0, 1], [1, 0]]
],
colors=['black', 'red'],
linewidths=[3, 8],
)
axes.add_collection(roads)
plt.show()
嗯