--- name: chart-replace description: 把已有组件换成另一种组件类型,例如"把折线图换成饼图""表格改成柱状图"。组件类型不能通过修改属性改变,要按这里的步骤替换;新组件沿用原组件的 ID、位置和数据 --- # 更换组件类型 ## 步骤 1. 同一轮一起调用 get_nodes(读取原组件的完整配置)和 get_component_materials(查看新类型的默认配置),两者互不依赖 2. 用户没说清新类型、不确定选哪种时,才用 list_components 查看可用组件 3. 在同一批动作里先 delete 原组件,再 add 新组件: - node.id 沿用原组件 ID,layout 沿用原组件的位置和尺寸(用户另有要求除外) - node.type 填新类型 4. 用 apply_actions 提交 ## 数据迁移 - 把原组件的展示数据迁移到新物料的配置结构:保留原数据的维度和数值,按新物料默认配置的写法改写字段映射, 例如原 encode 的 x/y 改为新图表需要的名称和数值映射 - 原类型特有、新物料不用的配置(如坐标轴)不要带过去 - 提供 series 等数组时,以物料默认配置中的对应项为基础写完整 - 原数据无法对应到新类型时,不写数据相关字段,沿用物料示例数据 ## 标题 - 原标题只是旧类型的名称(如"折线图")时,改为新类型的名称(如"饼图") - 用户自定义的标题保留 - 不使用物料的示例标题