highcharts - Hightcharts:平滑放大/缩小距离
问题描述
如何使用按钮平滑放大和缩小图表?下面我给出了图形的代码近似值。(如果这很重要:我每秒都有数据。)
var min = chart.xAxis[0].getExtremes().min,
max = chart.xAxis[0].getExtremes().max;
chart.xAxis[0].setExtremes((min + 12 * 2000),(max - 12 * 2000));
解决方案
缩放平滑度取决于图表上渲染点的数量。我注意到,如果禁用 dataGrouping 并且点数小于 250 动画效果很好。
演示:https ://jsfiddle.net/BlackLabel/hj5Lyda7/
var chart = Highcharts.stockChart('container', {
chart: {
animation: true
},
title: {
text: 'AAPL Stock Price'
},
series: [{
name: 'AAPL',
data: data,
dataGrouping: {
enabled: false
}
}]
});
document.getElementById("btn").addEventListener('click', function() {
var min = chart.xAxis[0].getExtremes().min,
max = chart.xAxis[0].getExtremes().max;
chart.xAxis[0].setExtremes((min + 24 * 3600 * 1000), (max - 24 * 3600 * 1000), true, {
duration: 2000
}); //12 hrs on min and 12hrs on max, summarised it is one day.
})
恐怕对于更多的点,不可能保持这种平滑度,并且必须使用 rangeSelector 功能更改显示的范围。
推荐阅读
- wordpress - WordPress | 未登录时不可见更改
- react-native - React-Native:使用自定义 TextInput 组件添加文本限制指示器
- php - 将 HTMl 块添加到静态页面的表单
- database - 票号的架构,如 jira
- android - InverseBindingAdapter 不起作用,出现错误:
预期在生成的 Java 代码中 - javascript - Standardjs 忽略 .eslintrc 文件
- sql - 如果在 Select 中找不到行,Oracle SQL 返回静态值
- sql - Postgresql OR 语句减慢查询速度
- java - Gradle Invalid Publication 'shadow':具有相同扩展名和分类器的多个工件('jar'、'all')
- xcode - 未找到模块 Firebase 身份验证