用html和任意框架写出折线图可以放大缩小自由切换柱形折线形
时间: 2024-03-19 22:43:25 浏览: 52
一款html折线统计图
好的,我可以为你提供一个使用 Highcharts.js 框架实现的折线图,可以自由切换柱形和折线形,并且支持放大缩小功能。以下是代码示例:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>折线图/柱形图切换</title>
<!-- 引入 Highcharts.js -->
<script src="https://cdn.staticfile.org/highcharts/9.1.2/highcharts.js"></script>
</head>
<body>
<div id="chart" style="width: 800px;height:400px;"></div>
<button onclick="toggleChart()">切换图形</button>
<script type="text/javascript">
// 初始化 Highcharts 实例
var chart = Highcharts.chart('chart', {
chart: {
type: 'line'
},
title: {
text: '折线图/柱形图切换'
},
xAxis: {
categories: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
series: [{
name: '折线图',
data: [120, 132, 101, 134, 90, 230, 210]
}]
});
// 定义切换图形的函数
function toggleChart() {
// 判断当前图形类型
var currentType = chart.series[0].type;
if (currentType === 'line') {
// 切换到柱形图
chart.update({
chart: {
type: 'column'
},
series: [{
name: '柱形图',
data: [220, 182, 191, 234, 290, 330, 310]
}]
});
} else {
// 切换到折线图
chart.update({
chart: {
type: 'line'
},
series: [{
name: '折线图',
data: [120, 132, 101, 134, 90, 230, 210]
}]
});
}
}
// 添加放大缩小功能
chart.update({
chart: {
zoomType: 'x'
},
xAxis: {
minRange: 1
}
});
</script>
</body>
</html>
```
在这个示例中,我们使用了 Highcharts.js 框架来绘制折线图和柱形图,并且通过切换 chart 中的 type 属性来实现折线图和柱形图的切换。同时,我们还使用了 Highcharts 的 zoomType 和 minRange 属性来实现图形的放大缩小功能。
阅读全文