feat:接入mcp,为模型提供图表信息
This commit is contained in:
@@ -0,0 +1,516 @@
|
||||
{
|
||||
"order": 14,
|
||||
"key": "heatmap-chart",
|
||||
"type": "heatmap-chart",
|
||||
"name": "热力图",
|
||||
"description": "用格子颜色深浅展示两个类目维度交叉处的数值大小",
|
||||
"tags": [
|
||||
"charts",
|
||||
"热力图",
|
||||
"heatmap-chart",
|
||||
"热力",
|
||||
"分布",
|
||||
"时段"
|
||||
],
|
||||
"renderer": "echarts",
|
||||
"group": "charts",
|
||||
"icon": "solar:widget-bold",
|
||||
"sample_data": true,
|
||||
"usage_notes": [
|
||||
"默认图表数据仅用于演示,不是真实业务数据",
|
||||
"通过顶层 dataId 关联已有数据源,当前后端尚未实现绑定操作",
|
||||
"数据源每行一个格子,三列分别对应 X、Y、数值,数值列需放在最后一列(visualMap 默认映射最后一个维度)",
|
||||
"visualMap.min / max 需按实际数据范围调整",
|
||||
"label.formatter 用 {@字段名} 引用数值列,修改数值字段时需同步修改"
|
||||
],
|
||||
"field_groups": [
|
||||
"node-base",
|
||||
"chart-title",
|
||||
"chart-grid",
|
||||
{
|
||||
"key": "heatmap-axis",
|
||||
"label": "坐标轴",
|
||||
"description": "热力图的横轴和纵轴都是类目轴",
|
||||
"fields": [
|
||||
{
|
||||
"path": "props.option.xAxis.axisLabel.color",
|
||||
"label": "X轴文字色",
|
||||
"description": "横轴类目文字的颜色",
|
||||
"value_type": "color",
|
||||
"aliases": [
|
||||
"横轴文字颜色"
|
||||
],
|
||||
"panel": false
|
||||
},
|
||||
{
|
||||
"path": "props.option.yAxis.axisLabel.color",
|
||||
"label": "Y轴文字色",
|
||||
"description": "纵轴类目文字的颜色",
|
||||
"value_type": "color",
|
||||
"aliases": [
|
||||
"纵轴文字颜色"
|
||||
],
|
||||
"panel": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "heatmap-visual",
|
||||
"label": "色阶",
|
||||
"description": "数值到格子颜色的映射,数值越大颜色越接近高值颜色",
|
||||
"fields": [
|
||||
{
|
||||
"path": "props.option.visualMap.min",
|
||||
"label": "最小值",
|
||||
"description": "色阶的最小值,需按实际数据范围调整",
|
||||
"value_type": "number",
|
||||
"span": 12
|
||||
},
|
||||
{
|
||||
"path": "props.option.visualMap.max",
|
||||
"label": "最大值",
|
||||
"description": "色阶的最大值,需按实际数据范围调整",
|
||||
"value_type": "number",
|
||||
"span": 12
|
||||
},
|
||||
{
|
||||
"path": "props.option.visualMap.inRange.color.0",
|
||||
"label": "低值颜色",
|
||||
"description": "最小值对应的格子颜色",
|
||||
"value_type": "color",
|
||||
"span": 12
|
||||
},
|
||||
{
|
||||
"path": "props.option.visualMap.inRange.color.4",
|
||||
"label": "高值颜色",
|
||||
"description": "最大值对应的格子颜色",
|
||||
"value_type": "color",
|
||||
"span": 12
|
||||
},
|
||||
{
|
||||
"path": "props.option.visualMap.inRange.color",
|
||||
"label": "色阶颜色",
|
||||
"description": "从低到高的 5 个颜色,整体换配色时修改它",
|
||||
"value_type": "array",
|
||||
"item_type": "color",
|
||||
"aliases": [
|
||||
"配色",
|
||||
"渐变色"
|
||||
],
|
||||
"panel": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "heatmap-label",
|
||||
"label": "数值标签",
|
||||
"description": "格子内显示的数值",
|
||||
"fields": [
|
||||
{
|
||||
"path": "props.option.series.0.label.show",
|
||||
"label": "显示数值",
|
||||
"description": "是否在每个格子内显示数值",
|
||||
"value_type": "boolean",
|
||||
"aliases": [
|
||||
"数值标签",
|
||||
"标签"
|
||||
]
|
||||
},
|
||||
{
|
||||
"path": "props.option.series.0.label.formatter",
|
||||
"label": "数值格式",
|
||||
"description": "格子内数值的显示格式,用 {@字段名} 引用数值列,例如 {@value};修改数值字段时需同步修改",
|
||||
"value_type": "string",
|
||||
"aliases": [
|
||||
"标签格式"
|
||||
]
|
||||
},
|
||||
{
|
||||
"path": "props.option.series.0.label.color",
|
||||
"label": "数值文字色",
|
||||
"description": "格子内数值文字的颜色",
|
||||
"value_type": "color",
|
||||
"aliases": [
|
||||
"标签颜色"
|
||||
],
|
||||
"panel": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"chart-encode-xy",
|
||||
{
|
||||
"key": "heatmap-value",
|
||||
"label": "数值映射",
|
||||
"description": "格子颜色使用的数值列",
|
||||
"fields": [
|
||||
{
|
||||
"path": "props.option.series.0.encode.value",
|
||||
"label": "数值字段",
|
||||
"description": "格子数值使用数据集中的哪一列,必须是 dataset.source 中的最后一列;修改后同步修改数值格式",
|
||||
"value_type": "string",
|
||||
"aliases": [
|
||||
"值字段"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"eventOptions": [
|
||||
{
|
||||
"label": "点击事件",
|
||||
"value": "click"
|
||||
},
|
||||
{
|
||||
"label": "双击事件",
|
||||
"value": "dblclick"
|
||||
},
|
||||
{
|
||||
"label": "鼠标进入事件",
|
||||
"value": "mouseenter"
|
||||
},
|
||||
{
|
||||
"label": "鼠标离开事件",
|
||||
"value": "mouseleave"
|
||||
},
|
||||
{
|
||||
"label": "鼠标按下事件",
|
||||
"value": "mousedown"
|
||||
},
|
||||
{
|
||||
"label": "鼠标抬起事件",
|
||||
"value": "mouseup"
|
||||
},
|
||||
{
|
||||
"label": "鼠标移动事件",
|
||||
"value": "mousemove"
|
||||
},
|
||||
{
|
||||
"label": "鼠标滚轮事件",
|
||||
"value": "mousewheel"
|
||||
},
|
||||
{
|
||||
"label": "生命周期事件",
|
||||
"value": "vnodeMounted"
|
||||
}
|
||||
],
|
||||
"schema": {
|
||||
"type": "heatmap-chart",
|
||||
"name": "热力图",
|
||||
"layout": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"width": 480,
|
||||
"height": 300
|
||||
},
|
||||
"props": {
|
||||
"option": {
|
||||
"title": {
|
||||
"text": "访问时段分布",
|
||||
"top": 8,
|
||||
"left": "center",
|
||||
"textStyle": {
|
||||
"color": "#e5eaf3",
|
||||
"fontSize": 16
|
||||
}
|
||||
},
|
||||
"tooltip": {
|
||||
"position": "top"
|
||||
},
|
||||
"dataset": {
|
||||
"source": [
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周一",
|
||||
"value": 8
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周一",
|
||||
"value": 7
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周一",
|
||||
"value": 46
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周一",
|
||||
"value": 62
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周一",
|
||||
"value": 76
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周一",
|
||||
"value": 84
|
||||
},
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周二",
|
||||
"value": 15
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周二",
|
||||
"value": 14
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周二",
|
||||
"value": 42
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周二",
|
||||
"value": 58
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周二",
|
||||
"value": 72
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周二",
|
||||
"value": 80
|
||||
},
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周三",
|
||||
"value": 11
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周三",
|
||||
"value": 10
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周三",
|
||||
"value": 49
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周三",
|
||||
"value": 65
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周三",
|
||||
"value": 68
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周三",
|
||||
"value": 76
|
||||
},
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周四",
|
||||
"value": 18
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周四",
|
||||
"value": 6
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周四",
|
||||
"value": 45
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周四",
|
||||
"value": 61
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周四",
|
||||
"value": 75
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周四",
|
||||
"value": 83
|
||||
},
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周五",
|
||||
"value": 14
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周五",
|
||||
"value": 13
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周五",
|
||||
"value": 52
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周五",
|
||||
"value": 57
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周五",
|
||||
"value": 71
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周五",
|
||||
"value": 79
|
||||
},
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周六",
|
||||
"value": 12
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周六",
|
||||
"value": 11
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周六",
|
||||
"value": 61
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周六",
|
||||
"value": 81
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周六",
|
||||
"value": 98
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周六",
|
||||
"value": 97
|
||||
},
|
||||
{
|
||||
"slot": "0-4点",
|
||||
"day": "周日",
|
||||
"value": 19
|
||||
},
|
||||
{
|
||||
"slot": "4-8点",
|
||||
"day": "周日",
|
||||
"value": 7
|
||||
},
|
||||
{
|
||||
"slot": "8-12点",
|
||||
"day": "周日",
|
||||
"value": 57
|
||||
},
|
||||
{
|
||||
"slot": "12-16点",
|
||||
"day": "周日",
|
||||
"value": 77
|
||||
},
|
||||
{
|
||||
"slot": "16-20点",
|
||||
"day": "周日",
|
||||
"value": 94
|
||||
},
|
||||
{
|
||||
"slot": "20-24点",
|
||||
"day": "周日",
|
||||
"value": 104
|
||||
}
|
||||
]
|
||||
},
|
||||
"grid": {
|
||||
"top": 48,
|
||||
"right": 24,
|
||||
"bottom": 64,
|
||||
"left": 48,
|
||||
"containLabel": true
|
||||
},
|
||||
"xAxis": {
|
||||
"type": "category",
|
||||
"axisLine": {
|
||||
"lineStyle": {
|
||||
"color": "#4c4d4f"
|
||||
}
|
||||
},
|
||||
"axisLabel": {
|
||||
"color": "#cfd3dc"
|
||||
},
|
||||
"splitArea": {
|
||||
"show": true
|
||||
}
|
||||
},
|
||||
"yAxis": {
|
||||
"type": "category",
|
||||
"axisLine": {
|
||||
"lineStyle": {
|
||||
"color": "#4c4d4f"
|
||||
}
|
||||
},
|
||||
"axisLabel": {
|
||||
"color": "#cfd3dc"
|
||||
},
|
||||
"inverse": true,
|
||||
"splitArea": {
|
||||
"show": true
|
||||
}
|
||||
},
|
||||
"visualMap": {
|
||||
"min": 0,
|
||||
"max": 120,
|
||||
"calculable": true,
|
||||
"orient": "horizontal",
|
||||
"left": "center",
|
||||
"bottom": 4,
|
||||
"itemHeight": 120,
|
||||
"textStyle": {
|
||||
"color": "#cfd3dc"
|
||||
},
|
||||
"inRange": {
|
||||
"color": [
|
||||
"#1d2b44",
|
||||
"#337ecc",
|
||||
"#79bbff",
|
||||
"#e6a23c",
|
||||
"#f56c6c"
|
||||
]
|
||||
}
|
||||
},
|
||||
"series": [
|
||||
{
|
||||
"name": "访问量",
|
||||
"type": "heatmap",
|
||||
"label": {
|
||||
"show": true,
|
||||
"formatter": "{@value}",
|
||||
"color": "#e5eaf3",
|
||||
"fontSize": 11
|
||||
},
|
||||
"itemStyle": {
|
||||
"borderColor": "#141414",
|
||||
"borderWidth": 2
|
||||
},
|
||||
"encode": {
|
||||
"x": "slot",
|
||||
"y": "day",
|
||||
"value": "value"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"style": null,
|
||||
"events": []
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user