bizcharts图表封装之堆叠柱状图(带Slider)

一、带滚动条Slider的堆叠柱状图封装

     堆积柱状图和分组柱状图从代码上看,只是堆积柱状图<Goem/>不需要设置just

import React from "react";
import {Axis, Chart, Geom, Legend, Tooltip} from "bizcharts";
// @ts-ignore
import Slider from 'bizcharts-plugin-slider';
// @ts-ignore
import DataSet from '@antv/data-set';
import {dealSliderChange, filterSliderData} from "@/pages/charts/utils/chartsCommon";

interface IStackedColumnProps {
  data: any[]; // 数据源
  xAxis: string; // x轴坐标
  yAxis: string; // y轴坐标
  legendName: string; // 图例对应的变量(数据中表示种类的字段)
  color?: string[];
  height?: number;
  maxLen?: number;
}

/**
 * 堆积柱状图(设置滚动条)
 * @param props
 * @constructor
 */
const StackedColumn: React.FC<IStackedColumnProps> = (props) => {
  const {height = 400, xAxis, yAxis, data, maxLen, color, legendName} = props;
  let flag: boolean = false;
  let dv: a
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要使用AntV G2Plot 2.4.7版本创建堆叠柱线图表并加上slider,可以按照以下步骤进行: 1. 安装G2Plot和Slider组件: ``` npm install @antv/g2plot@2.4.7 npm install @antv/component@2.2.6 ``` 2. 导入G2Plot和Slider组件: ```javascript import { StackedColumnLine } from '@antv/g2plot'; import { Slider } from '@antv/component'; ``` 3. 准备数据: ```javascript const data = [ { year: '2010', type: 'Sales', value: 2750 }, { year: '2010', type: 'Expenses', value: 1150 }, { year: '2011', type: 'Sales', value: 3500 }, { year: '2011', type: 'Expenses', value: 1250 }, { year: '2012', type: 'Sales', value: 4200 }, { year: '2012', type: 'Expenses', value: 1300 }, { year: '2013', type: 'Sales', value: 5000 }, { year: '2013', type: 'Expenses', value: 1600 }, { year: '2014', type: 'Sales', value: 6500 }, { year: '2014', type: 'Expenses', value: 1900 }, ]; ``` 4. 创建堆叠柱线图表并添加slider: ```javascript const plot = new StackedColumnLine('container', { data, xField: 'year', yField: 'value', stackField: 'type', line: {}, }); const slider = new Slider({ domContainer: '#slider-container', width: 500, height: 26, padding: [5, 10], data: data.map((d) => d.year), xAxis: { tickCount: 5, label: null, title: null, line: null, }, yAxis: null, start: 0, end: 0.6, backgroundChart: { type: 'line', options: { data, xField: 'year', yField: 'value', smooth: true, }, }, }); slider.addEventListener('sliderchange', ({ startValue, endValue }) => { plot.filter('year', (val) => { return ( Number(val) >= Number(startValue) && Number(val) <= Number(endValue) ); }); plot.render(); }); plot.render(); slider.render(); ``` 这样,您就可以创建一个堆叠柱线图表并加上slider了。具体效果可以参考G2Plot官方文档中的[堆叠柱线图表示例](https://g2plot.antv.vision/zh/examples/column/stacked-column-line#stacked-column-line)。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值