← 返回技术深读

源码深读 · 2019

产业链关系画布与数据融合源码深读

从采集适配器、接口契约和自研 Canvas 图谱引擎还原产业—企业—资本—园区—资讯的探查逻辑。

产业链知识图谱Canvas数据融合

业务图谱的真实边界

前端接口把系统拆成产业链、节点、公司、园区、协会、产业基金、上市公司和资讯八个域。用户从关键词搜索产业链,打开单链,再从可探查节点进入相关产业;同一节点可查看企业、区域分布、新闻、研究和政策。资本侧进一步连接基金投资谱系、被投公司和产业匹配分布。

这说明核心并非通用图数据库浏览器,而是有方向和语义约束的行业研究路径:产业上下游是主干,公司、资本、区域和资料是侧向证据。

自研关系画布

画布没有依赖现成图组件。初始化时创建高分辨率 Canvas,根据设备像素比放大实际画布、再用 CSS 反向缩放,保证文字和线条清晰。坐标器把来源中的 upstream/downstream/left/right 归一为上下左右四区,按层级与前序长度计算节点位置和整体边界。

渲染顺序为背景、中心节点、四区节点和箭头。非直线连接使用两个中间控制点绘制贝塞尔虚线。节点命中通过点位检测完成:可探查节点悬停时局部清除并重绘;超过八字的名称每 300 毫秒滚动;按下空白区域拖动画布,按下节点触发探查。

缩放并非浏览器整体变换,而是更新比例后重新计算全部坐标并重绘。滑块范围对应 20% 到 200%。画布还能导出 PNG、全屏展示并保存收藏状态。基金谱系复用另一套近似引擎,把关系按投资方/被投方拆成上下两区,节点副标题显示认缴金额与持股比例。

数据适配层

解析仓使用 Scrapy 采集产业概念、股票、园区、新闻和搜索结果。资讯任务先按产业主题生成查询,解析标题、摘要、来源、日期和跳转地址,再请求正文并拼接段落。园区适配器提取地点、关联产业与入驻企业;另有代理轮换和自定义重试中间件。

这些仓库证明了多来源获取和字段提取,却没有出现统一实体消歧算法。关键词命中只能产生候选关系,不能直接证明某新闻、企业或园区属于特定产业。

值得保留与需要推倒的部分

值得保留的是四向产业语义、节点继续探查、统计与原始资料并行,以及不依赖第三方库的高像素画布。接口域也已经形成较完整的研究信息架构。

需要重建的是数据可信链:产业本体要版本化;企业别名、曾用名和外部标识要进入实体解析;每条关系保存来源、时间、置信度和审核状态;新闻仅作为提及证据。前端对查询参数直接拼接,重建应统一编码和结构化参数。窗口监听器使用匿名函数且没有解除,反复进入页面可能累积;画布滚动计时器也需要在组件销毁时清理。

证据边界

完整业务后端和生产图模式缺失,因此报告能确认交互图结构、接口契约和采集字段,不能确认服务端使用何种图查询、实体合并或相关性排名。任何后端算法描述都应标注为待重建,而非历史事实。