Deneb自定义HTML格式工具提示显示异常问题咨询
在Deneb中创建自定义HTML格式工具提示的解决方案
要让Deneb支持HTML格式的工具提示,需要完成以下两步操作:
1. 开启Deneb的HTML工具提示支持
在Deneb可视化的设置面板中,找到Tooltip Handling选项,将其从默认的Native切换为Custom HTML。原生模式会自动转义HTML标签,这是导致内容显示为纯文本的核心原因。
2. 调整Vega代码中的Tooltip配置
将原代码中直接赋值字符串的tooltip字段,修改为包含html属性的对象,明确指定内容为HTML格式:
修改后的完整shape配置代码:
{ "type": "shape", "name": "geoshape", "style": ["geoshape"], "from": {"data": "world_map_aggregated"}, "encode": { "enter": { "strokeWidth": {"value": 0.5}, "stroke": {"value": "#000000"} }, "update": { "tooltip": { "html": { "signal": "'<div style=\"background: white; padding: 10px; border-radius: 5px; box-shadow: 0px 0px 10px rgba(0,0,0,0.2);\"><strong>Company Data</strong><br><strong>Country:</strong> ' + datum['id'] + '<br><strong>Company:</strong> ' + datum['Company'] + '<br><strong>Value:</strong> ' + datum['formatted_value'] + '</div>'" } }, "fill": {"scale": "color", "field": "Value"}, "strokeWidth": { "signal": "hoveredFeature2 && hoveredFeature2.id === datum['id'] ? 2 : 0.5" } } }, "transform": [{"type": "geoshape", "projection": "projection"}] }
额外可选项:在Vega spec的最顶层添加全局配置,确保tooltip默认使用HTML模式:
{ "$schema": "https://vega.github.io/schema/vega/v5.json", "config": { "tooltip": { "enabled": true, "html": true } }, // 其他可视化配置... }
完成以上操作后,工具提示就会正确渲染HTML格式的内容,而非显示纯文本标签。
内容的提问来源于stack exchange,提问作者tomecsek
相关产品推荐
相关产品推荐

