最后修改时间:2022-12-15 18:28
默认情况下,Highcharts 图表都是支持整个图表跟随图表容器响应式的,无需额外配置,只需要保证容器的宽度自适应即可,下面是最简单的容器样式设置
<!-- 通过设置 minwidth 保证 div 容器自适应,那么 Highcharts 图表就会跟随容器自适应 -->
<div style="height:400px;min-width:300px" id="container"></div>
另外还可以手动的调用自适应函数 chart.reflow()
来响应页面变化
chart.reflow(); // 手动调用自适应函数
但这种自适应自适整个图表粒度的自适应,无法达到图表各个组件的自适应要求。
Highcharts 5.0 推出了全新的自适应功能,可以配置 responsive.rules
可以根据条件来设置不同的图表响应配置。
responsive.rules
共有两个大的属性:condition
和 chartOptions
responsive: {
rules: [{ // 在图表小于 500px 的情况下关闭图例
condition: { // 响应条件
maxWidth: 500
},
chartOptions: { // 响应内容
legend: {
enabled: false
}
}
}]
}
condition 指响应的条件,包含高宽度的最值及回调函数,下面是详细说明
this
变量代表着当前图表对象,回调函数返回 true
则表示本规则生效。这个属性相对高宽度限定更加灵活,另外可以对整个页面宽度改变进行响应chartOptions 是响应内容。它可以配置完整的图表配置,也就是支持全部的组件响应式。
另外在 CSS 样式分离模式下,我们最常用的是根据响应改变 chart.className
来应用不同的 CSS 样式。
responsive.rules
是一个数组配置,所有如果需要配置多个响应规则,写多个数组元素即可。
一般情况下,响应式功能可以根据图表的大小来调整不同组件的放置位置、组件之间的间隔等,具体的使用实例有:切换图例显示、改变坐标轴间距 等
本教程仅用于学习、研究和交流目的,欢迎非商业转载。转载请注明出处及完整的链接。
订阅更新
尊敬的用户您好:
由于域名备案调整,我们将于 2023-01-01 ~ 2023-01-07 日陆续停用 highcharts.com.cn 域名,受影响的网站及域名如下:
网站或服务名称 | 域名 | 替代的网站 |
---|---|---|
主站 | www.highcharts.com.cn | www.hcharts.cn |
静态资源服务/CDN | cdn.highcharts.com.cn code.highcharts.com.cn | code.hcharts.cn |
img.highcharts.com.cn | img.hcharts.cn | |
API 文档 | api.highcharts.com.cn | api.hcharts.cn |
导出服务 | export.highcharts.com.cn | export.hcharts.cn |
以上网站服务及 highcharts.com.cn 域名下的网站将于 2023-01-08 日全部下线,未来一段时间将不可访问,后续我们将上线新的网站。
如果您的应用中有使用到相关服务,请抓紧时间对链接进行调整(特别是静态资源/CDN 服务的链接),以免影响您的网站或应用的正常运行,由此给您带来的不便,敬请谅解。
如需帮助,请及时与我们联系:0571-86208605 / 18106595564(微信)。
简数科技 2022-12-22