如何解决Taipy中3D散点图聚类配色无法正常显示的问题
Taipy 3D散点图聚类配色不生效修复
问题根源
配色失效是两个问题叠加导致的:
- 列名不匹配:代码中DataFrame存储聚类标签的列名是
cluster1,但图表属性里color参数传的是cluster,框架找不到对应字段,自然无法读取聚类值做配色映射。 - 类型识别错误:就算把列名改对,数值类型的聚类标签会被Taipy默认识别为连续数值,最终生成的是连续渐变色,而不是预期中每个聚类对应一个独立颜色的离散分类配色。
修复方法
只需要做两处调整即可:
- 把
color参数的取值改成正确的列名cluster1 - 将聚类标签列转为字符串类型,强制框架将其识别为离散分类维度,自动分配区分度足够的分类配色
修复后的可运行完整代码:
import pandas as pd import numpy as np from taipy import Gui df = pd.DataFrame(np.random.randint(0,100,size=(100, 3)), columns=list('xyz')) df['cluster1'] = np.random.randint(0,3,100).astype(str) my_page =""" Creation of a 3-D chart: <|{df}|chart|type=Scatter3D|x=x|y=y|z=z|mode=markers|color=cluster1|> """ Gui(page=my_page).run()
如果不想修改原始数据的类型,也可以通过给图表传入options参数,用Plotly原生配置指定颜色映射规则,但直接转字符串的方式代码量最少,不需要额外记忆复杂的配置项。
内容的提问来源于stack exchange,提问作者st_killer
相关产品推荐
相关产品推荐

