data-visualization - AttributeError:“列表”对象没有属性“rgb2hex”
问题描述
我收到错误 *" AttributeError: 'list' object has no attribute 'rgb2hex'" 尝试对我的数据应用 Kmeans 聚类并尝试使用 folium 映射聚类 *
map_clusters = folium.Map(location=[latitude, longitude], zoom_start=11)
# set color scheme for the clusters
x = np.arange(kclusters)
ys = [i + x + (i*x)**2 for i in range(kclusters)]
colors_array = cm.rainbow(np.linspace(0, 1, len(ys)))
rainbow = [colors.rgb2hex(i) for i in colors_array]
# add markers to the map
markers_colors = []
for lat, lon, poi, cluster in zip(banglore_merged['latitude'], banglore_merged['longitude'], banglore_merged['location'], banglore_merged['Cluster Labels']):
label = folium.Popup(str(poi) + ' Cluster ' + str(cluster), parse_html=True)
folium.CircleMarker(
[lat, lon],
radius=5,
popup=label,
color=rainbow[int(cluster)-1],
fill=True,
fill_color=rainbow[int(cluster)-1],
fill_opacity=0.7).add_to(map_clusters)
map_clusters
错误:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-50-8e09b66c0be6> in <module>
6 ys = [i + x + (i*x)**2 for i in range(kclusters)]
7 colors_array = cm.rainbow(np.linspace(0, 1, len(ys)))
----> 8 rainbow = [colors.rgb2hex(i) for i in colors_array]
9
10 # add markers to the map
<ipython-input-50-8e09b66c0be6> in <listcomp>(.0)
6 ys = [i + x + (i*x)**2 for i in range(kclusters)]
7 colors_array = cm.rainbow(np.linspace(0, 1, len(ys)))
----> 8 rainbow = [colors.rgb2hex(i) for i in colors_array]
9
10 # add markers to the map
AttributeError: 'list' object has no attribute 'rgb2hex'
我希望你能找到我查询的答案。提前致谢
解决方案
我猜你正在将一个空数据集传递给变量。请更改名称。
rainbow = [colors.rgb2hex(i) for i in colors_array]
推荐阅读
- c# - 如何在不知道经纬度的情况下调用 MapLocationFinder.FindLocationsAsync() 来获取地址的坐标?
- html - 如何使用 R 从网页中检索多个表
- python - 从不在 groupby 中的分组数据框中选择第二列
- python - 试图在文件上运行 unittest 模块并且... ModuleNotFoundError: No module named 'test.py'
- javascript - 临时 THREE.js 渲染器和容器使用后如何释放内存?
- sql - SQL:将左连接作为对象返回
- laravel - 同时请求具有不同参数的laravel获取表单具有相同的响应
- php - 在php中分解对mysql的长方法调用
- javascript - Angular DataTables:多个数据表的单个列过滤器不起作用
- sql - 插入新记录时生成累进编号(某些记录需要具有相同的编号)