news 2026/4/18 8:51:41

Highcharts 散点图

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Highcharts 散点图

Highcharts 散点图(Scatter Chart)详解

Highcharts 的散点图是最经典的用于展示两个数值变量之间关系(如相关性、分布、聚类、异常值)的图表类型。每个数据点用一个标记表示,默认是圆点,支持自定义形状、大小、颜色,并支持缩放、抖动(jitter)避免重叠等高级功能。

1. 基本散点图完整示例(支持缩放 + 多系列)
<!DOCTYPEhtml><htmllang="zh"><head><metacharset="UTF-8"><title>Highcharts 散点图示例</title><scriptsrc="https://code.highcharts.com/highcharts.js"></script></head><body><divid="container"style="width:900px;height:600px;margin:50px auto;"></div><script>Highcharts.chart('container',{chart:{type:'scatter',// 关键:设置为 'scatter'zoomType:'xy',// 支持 X/Y 轴同时拖拽缩放(强烈推荐)panning:true,// 允许平移panKey:'shift',// 按住 Shift 拖动backgroundColor:'#f8f9fa',borderRadius:8},title:{text:'身高与体重关系散点图',style:{fontSize:'22px',fontWeight:'bold'}},subtitle:{text:'蓝色圆点:男生 | 红色三角:女生(模拟数据 n≈200)'},xAxis:{title:{text:'身高 (cm)'},gridLineWidth:1,min:140,max:200,startOnTick:true,endOnTick:true},yAxis:{title:{text:'体重 (kg)'},min:30,max:120},tooltip:{headerFormat:'<b>{series.name}</b><br>',pointFormat:'身高:{point.x} cm<br>体重:{point.y} kg'},plotOptions:{scatter:{marker:{radius:6,states:{hover:{radiusPlus:6,lineWidthPlus:2}}},jitter:{// 关键:轻微随机偏移,避免大量点重叠x:0.1,y:0.1}}},series:[{name:'男生',color:'#7cb5ec',marker:{symbol:'circle'},data:[[165,58],[168,62],[170,65],[172,68],[175,72],[178,76],[180,80],[182,84],[185,88],[188,92],[170,64],[173,69],[176,73],[179,78],[181,82],[183,86],[186,90],[189,94],[171,66],[174,70]// 可继续添加更多数据]},{name:'女生',color:'#ff7f7f',marker:{symbol:'triangle'},data:[[155,45],[158,48],[160,50],[162,52],[165,55],[168,58],[170,60],[172,62],[175,65],[178,68],[156,46],[159,49],[161,51],[163,53],[166,56],[169,59],[171,61],[173,63],[176,66],[177,67]// 更多数据]}]});</script></body></html>
2. 常用标记形状(symbol)
  • 'circle'(默认圆点)
  • 'square'(方块)
  • 'diamond'(菱形)
  • 'triangle'(三角)
  • 'triangle-down'(倒三角)

可为不同系列设置不同形状,便于区分组别。

3. 添加回归趋势线(最常见需求)

Highcharts 原生不自动计算回归线,但可以手动添加一条 line 系列作为趋势线:

// 示例趋势线数据(实际项目中可用最小二乘法计算)vartrendLine=[[145,35],[200,110]];series:[// ... 你的散点系列{type:'line',name:'趋势线',data:trendLine,marker:{enabled:false},dashStyle:'Dash',color:'#333333',lineWidth:2,enableMouseTracking:false,// 不显示 tooltipzIndex:5}]
4. 扩展为气泡图(展示第三维度)

只需引入highcharts-more.js并改为type: 'bubble'

<scriptsrc="https://code.highcharts.com/highcharts-more.js"></script>
chart:{type:'bubble',zoomType:'xy'},series:[{data:[{x:170,y:65,z:30},// z 值控制气泡大小{x:175,y:75,z:45},// ...]}]
5. 常用配置速查表
配置项说明与推荐值
chart.type'scatter'
chart.zoomType'xy'(数据密集时必开)
plotOptions.scatter.markerradius、symbol、states(自定义点样式)
plotOptions.scatter.jitter{ x: 0.05~0.15, y: 0.05~0.15 }(避免重叠)
series.color/marker.symbol区分不同组别
6. 适用场景
  • 相关性分析(身高-体重、温度-销量、价格-满意度)
  • 异常点检测
  • 聚类可视化(不同颜色/形状区分类别)
  • 与气泡图结合展示第三维度(如人口、销量)

如果你需要:

  • 大量数据点(上千点)的性能优化(boost 模块)
  • 自动计算回归线并显示方程
  • 动态实时添加散点(轨迹追踪)
  • 与箱线图(boxplot)组合展示分布

告诉我具体需求,我可以提供完整代码示例!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 11:05:44

一键召唤苏东坡!LLaMA Factory 微调:零基础打造专属 AI 文豪

你是谁&#xff1f; 我是多才多艺的文学家、书法家和画家&#xff0c;我是苏东坡&#xff0c;我……这是微调后大模型的回答&#xff0c;随着人工智能的发展&#xff0c;虚拟角色不再只是冰冷的对话机器&#xff0c;而是可以承载历史人物气质、知识体系乃至精神风貌的数字化身。…

作者头像 李华
网站建设 2026/4/18 8:49:34

GPT-SoVITS语音合成在太空站失重环境下的人机沟通适应性

GPT-SoVITS语音合成在太空站失重环境下的人机沟通适应性 在国际空间站的静谧舱室内&#xff0c;一名中国航天员轻声说&#xff1a;“打开生命维持系统日志。”几秒后&#xff0c;扬声器传出的声音竟与他本人如出一辙——语气平稳、语调熟悉&#xff0c;仿佛是自己在回应自己。这…

作者头像 李华
网站建设 2026/4/17 14:11:49

如何用7-Zip ZS实现高效文件压缩:新手完整教程

如何用7-Zip ZS实现高效文件压缩&#xff1a;新手完整教程 【免费下载链接】7-Zip-zstd 7-Zip with support for Brotli, Fast-LZMA2, Lizard, LZ4, LZ5 and Zstandard 项目地址: https://gitcode.com/gh_mirrors/7z/7-Zip-zstd 在数字化信息爆炸的时代&#xff0c;文件…

作者头像 李华
网站建设 2026/4/18 9:46:25

GPT-SoVITS语音克隆实战:小样本也能生成自然流畅语音

GPT-SoVITS语音克隆实战&#xff1a;小样本也能生成自然流畅语音 在短视频、播客和虚拟人内容爆发的今天&#xff0c;个性化语音合成正从“锦上添花”变为“刚需”。你有没有想过&#xff0c;只需一段不到一分钟的录音&#xff0c;就能让AI用你的声音读出任意文字&#xff1f;这…

作者头像 李华
网站建设 2026/4/18 4:38:46

垂直标签页扩展:如何彻底解决多任务标签混乱的终极方案

垂直标签页扩展&#xff1a;如何彻底解决多任务标签混乱的终极方案 【免费下载链接】vertical-tabs-chrome-extension A chrome extension that presents your tabs vertically. Problem solved. 项目地址: https://gitcode.com/gh_mirrors/ve/vertical-tabs-chrome-extensio…

作者头像 李华
网站建设 2026/4/18 9:22:08

如何用n8n构建企业级工作流自动化:5个关键步骤详解

如何用n8n构建企业级工作流自动化&#xff1a;5个关键步骤详解 【免费下载链接】n8n n8n 是一个工作流自动化平台&#xff0c;它结合了代码的灵活性和无代码的高效性。支持 400 集成、原生 AI 功能以及公平开源许可&#xff0c;n8n 能让你在完全掌控数据和部署的前提下&#xf…

作者头像 李华