├── .babelrc
├── .eslintignore
├── .eslintrc.js
├── .fatherrc.js
├── .github
└── ISSUE_TEMPLATE.md
├── .gitignore
├── .prettierrc.js
├── .storybook
├── .eslintrc
├── main.js
├── preview.js
└── webpack.config.js
├── CHANGELOG.md
├── README.md
├── SECURITY.md
├── __stories__
├── area.stories.tsx
├── base.stories.tsx
├── box.stories.tsx
├── bugs.stories.tsx
├── candle.stories.tsx
├── dashboard.stories.tsx
├── feature.stories.tsx
├── funnel.stories.tsx
├── g.stories.tsx
├── geometry.stories.tsx
├── heatMap.stories.tsx
├── interval.stories.tsx
├── line.stories.tsx
├── path.stories.tsx
├── pie.stories.tsx
├── plot.stories.tsx
├── plots
│ └── area.stories.tsx
├── point.stories.tsx
├── radar.stories.tsx
├── temp.stories.tsx
└── theme.stories.tsx
├── demos
├── adepter
│ ├── coord.jsx
│ └── geom-label.jsx
├── area
│ ├── areaWithNull.jsx
│ ├── basicArea.jsx
│ ├── basicAreaWithNegativeValues.jsx
│ ├── colorBlock.jsx
│ ├── intervalArea.jsx
│ ├── percentStackingArea.jsx
│ └── stackingArea.jsx
├── box
│ └── basicBox.jsx
├── bugs
│ ├── plot-bar.jsx
│ └── view-changeData.jsx
├── candle
│ ├── data.js
│ └── stock.jsx
├── components
│ ├── annotation-text.js
│ ├── annotation.jsx
│ ├── autoFit.jsx
│ ├── axis.jsx
│ ├── coordinate.jsx
│ ├── facet.jsx
│ └── view.jsx
├── dashboard
│ └── basicDashboard.jsx
├── external
│ └── index.html
├── features
│ ├── JsxTooltip.jsx
│ ├── changeData.jsx
│ ├── chartManager.jsx
│ ├── effects.jsx
│ ├── facet.jsx
│ ├── fiber-reconciler.jsx
│ ├── filter.jsx
│ ├── interaction.jsx
│ ├── pure.jsx
│ ├── resize.jsx
│ ├── selected.jsx
│ ├── slider.jsx
│ ├── tooltip-linkage.jsx
│ └── transform.jsx
├── funnel
│ └── basicFunnel.jsx
├── g-components
│ └── basic.tsx
├── geom
│ ├── LineAdvance.jsx
│ ├── area.jsx
│ ├── interval-group.jsx
│ ├── interval.jsx
│ ├── line.jsx
│ └── path.jsx
├── heatMap
│ ├── calendar.jsx
│ └── heatMap.jsx
├── interval
│ ├── basicBar.tsx
│ ├── basicColumn.jsx
│ ├── bezier.jsx
│ ├── colorGroupedStackedColumns.jsx
│ ├── comparedBar.jsx
│ ├── gradientBar.jsx
│ ├── groupedBar.jsx
│ ├── groupedColumns.jsx
│ ├── groupedStackedColumns.jsx
│ ├── histogram.jsx
│ ├── intervalColumn.jsx
│ ├── percentStackedColumn.jsx
│ ├── polarCoordinate.jsx
│ ├── roundedColumn.jsx
│ ├── stackedBars.jsx
│ └── stackedColumn.jsx
├── line
│ ├── gradientPolyline.jsx
│ ├── ordinaryCurve.jsx
│ ├── ordinaryPolyline.jsx
│ └── stepPolyline.jsx
├── pie
│ ├── RoseChart-limitedAngleRange.jsx
│ ├── basicPie.jsx
│ ├── multicolorNightingaleRoseillustration.jsx
│ ├── nestedPie.jsx
│ ├── nightingaleRoseIllustration.jsx
│ ├── nightingaleRosette.jsx
│ └── visualizationOfDailyWork.jsx
├── plot
│ ├── gauge.jsx
│ ├── line.jsx
│ ├── plots.jsx
│ └── ring.jsx
├── point
│ ├── basicPoint.jsx
│ ├── bubble.jsx
│ └── multiShapeScatter.jsx
├── radar
│ └── radar.jsx
└── theme
│ └── index.jsx
├── docs
├── BizCharts
│ ├── API文档
│ │ ├── Axis.md
│ │ ├── BizCharts 概览.md
│ │ ├── Chart.md
│ │ ├── Connector.md
│ │ ├── Coord.md
│ │ ├── DataSet.md
│ │ ├── Facet.md
│ │ ├── Geom.md
│ │ ├── Guide.md
│ │ ├── Label.md
│ │ ├── Legend.md
│ │ ├── Scale.md
│ │ ├── Slider.md
│ │ ├── Theme.md
│ │ ├── Tooltip.md
│ │ ├── Transform.md
│ │ ├── View.md
│ │ ├── canvas 属性.md
│ │ ├── data.json
│ │ ├── 图表事件.md
│ │ └── 自定义 Shape.md
│ ├── Demo
│ │ ├── 2015 年波士顿每天的平均温度可视化.md
│ │ ├── 2维行列分面.md
│ │ ├── BizCharts 使用 onLegendItemClick 管理 legend 状态.md
│ │ ├── BizCharts 导出图片.md
│ │ ├── BizCharts-基础饼图.md
│ │ ├── BizCharts@3.x Demo.md
│ │ ├── BizCharts分组条形图.md
│ │ ├── BizCharts分组柱状图.md
│ │ ├── BizCharts基础条形图.md
│ │ ├── BizCharts基础漏斗图(各层总和100%).md
│ │ ├── BizCharts基础漏斗图(最上层100%).md
│ │ ├── BizCharts基础面积图.md
│ │ ├── BizCharts堆叠条形图.md
│ │ ├── BizCharts堆叠柱状图.md
│ │ ├── BizCharts堆叠柱状图使用 Label 显示当前总数.md
│ │ ├── BizCharts堆叠面积图.md
│ │ ├── BizCharts散点图.md
│ │ ├── BizCharts百分比堆叠柱状图.md
│ │ ├── BizCharts自定义柱状图.md
│ │ ├── BizCharts饼图-分割空白.md
│ │ ├── Circle Packing.md
│ │ ├── Guide-DataMarker.md
│ │ ├── Guide-html.md
│ │ ├── Guide-region.md
│ │ ├── Guide.Html.md
│ │ ├── Guide均值线与图例联动.md
│ │ ├── Invalid Date in fecha.format.md
│ │ ├── Invalid Time: 20200229.md
│ │ ├── Kagi Chart.md
│ │ ├── Pizza Chart.md
│ │ ├── Polar Heatmap.md
│ │ ├── Punch Card.md
│ │ ├── Radial Bar Chart.md
│ │ ├── Wind Rose.md
│ │ ├── bizcharts-plugin-slider.md
│ │ ├── bizcharts分面柱图.md
│ │ ├── color映射多字段,通过*连接.md
│ │ ├── diverging 正负对比条形图.md
│ │ ├── g2-brush 多边形.md
│ │ ├── g2-brush 折线图.md
│ │ ├── g2-brush 柱状图.md
│ │ ├── g2-brush 结合 DataSet.md
│ │ ├── g2-brush 过滤图形.md
│ │ ├── g2-brush 高亮图形.md
│ │ ├── interval-onplotclick.md
│ │ ├── legend-custom.md
│ │ ├── legend-position.md
│ │ ├── list分面.md
│ │ ├── onAxisLabelClick.md
│ │ ├── streamgraph.md
│ │ ├── tree 分面.md
│ │ ├── voronoi图.md
│ │ ├── 一维箱形图.md
│ │ ├── 个性化 legend.md
│ │ ├── 个性化 tooltip.md
│ │ ├── 个性化标签饼图.md
│ │ ├── 仪表盘.md
│ │ ├── 仪表盘(多色).md
│ │ ├── 仪表盘(文字).md
│ │ ├── 使用html语法显示图表标题.md
│ │ ├── 元素周期表.md
│ │ ├── 六边形分箱.md
│ │ ├── 六边形大小分箱图.md
│ │ ├── 分块热力图.md
│ │ ├── 分片饼图.md
│ │ ├── 分组层叠柱状图.md
│ │ ├── 分组箱形图.md
│ │ ├── 分面条形图.md
│ │ ├── 列分面.md
│ │ ├── 刻度仪表盘.md
│ │ ├── 北京市2010至2015年空气质量指数.md
│ │ ├── 区域图(存在空值).md
│ │ ├── 区域着色1.md
│ │ ├── 区域着色2.md
│ │ ├── 区间条形图.md
│ │ ├── 区间柱状图.md
│ │ ├── 区间面积图.md
│ │ ├── 华夫图.md
│ │ ├── 单元测试覆盖率可视化.md
│ │ ├── 单色南丁格尔玫瑰图.md
│ │ ├── 南丁格尔玫瑰图.md
│ │ ├── 南丁格尔玫瑰彩图.md
│ │ ├── 南丁格尔玫瑰环图.md
│ │ ├── 双环图.md
│ │ ├── 双轴图表.md
│ │ ├── 双轴图隐藏Y轴.md
│ │ ├── 双轴并列柱图.md
│ │ ├── 和弦图.md
│ │ ├── 回归曲线.md
│ │ ├── 图例位置.md
│ │ ├── 图例默认选中.md
│ │ ├── 图片华夫图.md
│ │ ├── 圆头折线图.md
│ │ ├── 圆形分面.md
│ │ ├── 圆角堆叠柱状图.md
│ │ ├── 圆角柱状图.md
│ │ ├── 圆角矩形.md
│ │ ├── 地平线图.md
│ │ ├── 基础BizCharts饼图.md
│ │ ├── 基础柱状图.md
│ │ ├── 基础环图.md
│ │ ├── 基础箱形图.md
│ │ ├── 基础箱形图(有异常值).md
│ │ ├── 基础雷达图.md
│ │ ├── 基础雷达图(线).md
│ │ ├── 基础面积图(有负值).md
│ │ ├── 基础饼图-内部文本.md
│ │ ├── 堆叠柱状图Label展示.md
│ │ ├── 多层面积图.md
│ │ ├── 多层饼图.md
│ │ ├── 多形状散点图.md
│ │ ├── 多条折线图(增加趋势预测).md
│ │ ├── 多条阶梯折线图.md
│ │ ├── 多环图.md
│ │ ├── 多级 tree 分面.md
│ │ ├── 多色散点图.md
│ │ ├── 大规模区域图.md
│ │ ├── 子弹图.md
│ │ ├── 实时更新数据的折线图.md
│ │ ├── 对比漏斗图.md
│ │ ├── 对称漏斗图.md
│ │ ├── 尖底漏斗图.md
│ │ ├── 尾部跟随图例.md
│ │ ├── 层叠直方图.md
│ │ ├── 带文本的气泡图.md
│ │ ├── 带有label的条形图.md
│ │ ├── 带有slider的柱状图.md
│ │ ├── 带有坐标轴的南丁格尔玫瑰图.md
│ │ ├── 带标识的柱状图.md
│ │ ├── 带虚线部分的折线图.md
│ │ ├── 弧长链接图.md
│ │ ├── 径向系统树图.md
│ │ ├── 径向紧凑树图.md
│ │ ├── 扰动点图.md
│ │ ├── 折线图特定区域变色.md
│ │ ├── 日历色块图.md
│ │ ├── 日常作息可视化.md
│ │ ├── 旭日图.md
│ │ ├── 时间序列气泡图.md
│ │ ├── 普通折线图.md
│ │ ├── 普通折线图(曲线).md
│ │ ├── 普通折线图(渐变色).md
│ │ ├── 极坐标 voronoi 图.md
│ │ ├── 极坐标下的层叠柱状图.md
│ │ ├── 极坐标弧长链接图.md
│ │ ├── 极坐标相邻关系图.md
│ │ ├── 极坐标系下箱形图.md
│ │ ├── 柱状图 Region覆盖.md
│ │ ├── 柱状图带更新动效.md
│ │ ├── 柱状图饼图联动.md
│ │ ├── 柱线混合图.md
│ │ ├── 核函数概率密度分布.md
│ │ ├── 核函数概率密度回归曲线.md
│ │ ├── 核函数概率密度回归曲线(两字段).md
│ │ ├── 桑基图布局.md
│ │ ├── 气泡图-自定义 shape.md
│ │ ├── 气泡图.md
│ │ ├── 水平日历色块图.md
│ │ ├── 水波图 - 自定义圆形路径.md
│ │ ├── 水波图 - 自定义路径.md
│ │ ├── 水波图.md
│ │ ├── 渐变折线图.md
│ │ ├── 渐变条形图带label.md
│ │ ├── 渐变色面积图.md
│ │ ├── 滑动图例的大小.md
│ │ ├── 瀑布图.md
│ │ ├── 热力图.md
│ │ ├── 热力图动态更新.md
│ │ ├── 特殊数据点标注和特殊数据区间标注.md
│ │ ├── 玉珏图.md
│ │ ├── 玫瑰图-限定角度范围.md
│ │ ├── 玫瑰图镜像分面.md
│ │ ├── 甘特图.md
│ │ ├── 生态树布局.md
│ │ ├── 百分比堆叠面积图.md
│ │ ├── 直方图.md
│ │ ├── 相邻层次图.md
│ │ ├── 矩形分箱图.md
│ │ ├── 矩形大小分箱图.md
│ │ ├── 矩形树图.md
│ │ ├── 矩阵分面.md
│ │ ├── 符号华夫图.md
│ │ ├── 紧凑树布局.md
│ │ ├── 缩进树布局.md
│ │ ├── 股票图.md
│ │ ├── 股票图与范围区域图.md
│ │ ├── 自定义 tooltip 为表格.md
│ │ ├── 自定义tooltip样式.md
│ │ ├── 自定义柱状图.md
│ │ ├── 色块图.md
│ │ ├── 范围区域图与线图.md
│ │ ├── 螺旋坐标系.md
│ │ ├── 行分面.md
│ │ ├── 访问地区分布图 AreaMap.md
│ │ ├── 词云.md
│ │ ├── 负值X轴对齐.md
│ │ ├── 路径图.md
│ │ ├── 镜像分面(转置).md
│ │ ├── 镜像分面.md
│ │ ├── 阶梯折线图.md
│ │ ├── 雨量流量关系图.md
│ │ ├── 雨量流量对比.md
│ │ ├── 雷达图 圆圈底纹.md
│ │ ├── 雷达图复杂曲线.md
│ │ ├── 韦恩图.md
│ │ ├── 饼图-三角.md
│ │ ├── 饼图-分割空白.md
│ │ ├── 饼图-半径大小.md
│ │ ├── 饼图-柱状图.md
│ │ ├── 饼图-花瓣图.md
│ │ ├── 饼图-限定角度范围.md
│ │ ├── 饼图选中联动.md
│ │ ├── 饼图默认选中.md
│ │ └── 高度自适应.md
│ ├── 使用指南
│ │ ├── DataSet Package.md
│ │ ├── G2 的数据处理流程.md
│ │ ├── data.json
│ │ ├── 主题.md
│ │ ├── 几何标记和数据调整.md
│ │ ├── 图表交互.md
│ │ ├── 图表构成.md
│ │ ├── 图表类型.md
│ │ ├── 如何自定义动画.md
│ │ ├── 快速入门.md
│ │ ├── 按需加载.md
│ │ ├── 源数据的处理.md
│ │ ├── 答疑Issue复现教程.md
│ │ ├── 闰年日期0229异常处理.md
│ │ └── 高定制Tooltip插件.md
│ └── 实战
│ │ ├── BizCharts 3.x_G2 格式化指南.md
│ │ └── data.json
├── BizCharts@4.x
│ ├── API文档
│ │ ├── G组件
│ │ │ ├── Canvas.md
│ │ │ ├── Circle.md
│ │ │ ├── Ellipse.md
│ │ │ ├── Group.md
│ │ │ ├── Image.md
│ │ │ ├── Line.md
│ │ │ ├── Marker.md
│ │ │ ├── Path.md
│ │ │ ├── Polygon.md
│ │ │ ├── Polyline.md
│ │ │ ├── Rect.md
│ │ │ ├── Text.md
│ │ │ └── 通用属性.md
│ │ ├── 图形组件
│ │ │ ├── Area.md
│ │ │ ├── Edge.md
│ │ │ ├── Geom 通用图形组件.md
│ │ │ ├── Heatmap.md
│ │ │ ├── Interval.md
│ │ │ ├── Line.md
│ │ │ ├── LineAdvance.md
│ │ │ ├── Path.md
│ │ │ ├── Point.md
│ │ │ ├── Polygon.md
│ │ │ └── Schema.md
│ │ ├── 基础组件
│ │ │ ├── Annotation.md
│ │ │ ├── Axis.md
│ │ │ ├── Chart.md
│ │ │ ├── Coordinate.md
│ │ │ ├── Facet.md
│ │ │ ├── Interaction.md
│ │ │ ├── Legend.md
│ │ │ ├── Slider.md
│ │ │ ├── Tooltip.md
│ │ │ └── View.md
│ │ └── 扩展组件&Hooks
│ │ │ ├── Effects.md
│ │ │ ├── useChartInstance.md
│ │ │ └── useView.md
│ ├── Demo
│ │ ├── 自定义Legend的使用.md
│ │ ├── 3D效果柱状图(Interval).md
│ │ ├── Annotation.DataMarker Annotation.DataRegion.md
│ │ ├── Annotation.Html替代axis label.md
│ │ ├── Annotation.Region Demo.md
│ │ ├── Annotation.Text(BizCharts@4).md
│ │ ├── Annotation显示隐藏.md
│ │ ├── Axis label 旋转.md
│ │ ├── BizCharts分组条形图(BizCharts@4).md
│ │ ├── Facet 登录注册成功率分面图(BizCharts@4.x).md
│ │ ├── Facet使用Demo(BizCharts@4.x).md
│ │ ├── Guide均值线与图例联动(BizCharts@4).md
│ │ ├── Interaction使用Demo(BizCharts@4.x).md
│ │ ├── Invalid Time: 20200229(BizCharts@4).md
│ │ ├── KPI进度图.md
│ │ ├── PieChart使用Demo.md
│ │ ├── Style样式配置.md
│ │ ├── Tooltip允许鼠标移入+activeRegion (要点击一下图表,具体看代码注释).md
│ │ ├── X轴可拖拽的点图.md
│ │ ├── color映射多字段,分组堆叠柱状图(BizCharts@4).md
│ │ ├── diverging 正负对比图(BizCharts@4).md
│ │ ├── geom style回调.md
│ │ ├── label颜色自定义(BizCharts@4).md
│ │ ├── onAxisLabelClick label.md
│ │ ├── tab切换 Annotation.md
│ │ ├── tooltip formatter数据格式化.md
│ │ ├── tree分面(BizCharts@4).md
│ │ ├── 一维箱形图(BizCharts@4).md
│ │ ├── 两组分组柱状图(BizCharts@4).md
│ │ ├── 使用filter实现默认隐藏某图例下的数据.md
│ │ ├── 使用memo实现更改图表无关状态时图表不刷新.md
│ │ ├── 修复Invalid Date in fecha.format.md
│ │ ├── 内置预设的折线图形LineAdvance.md
│ │ ├── 分组堆叠柱状图(BizCharts@4).md
│ │ ├── 分组条形图(BizCharts@4).md
│ │ ├── 分组柱多折线混合图.md
│ │ ├── 分组柱状图 数值量级差异过大 type=log.md
│ │ ├── 分组柱状图(BizCharts@4).md
│ │ ├── 分组柱状图数值为null时居中展示.md
│ │ ├── 分组柱状图(adjust).md
│ │ ├── 分组柱线混合图.md
│ │ ├── 分组滚动柱状图(BizCharts@4).md
│ │ ├── 分面条形图(BizCharts@4).md
│ │ ├── 区间条形图(BizCharts@4).md
│ │ ├── 区间柱状图(BizCharts@4).md
│ │ ├── 区间面积图(BizCharts@4).md
│ │ ├── 南丁格尔玫瑰图(BizCharts@4).md
│ │ ├── 南丁格尔玫瑰环图(BizCharts@4).md
│ │ ├── 双Y轴、Axis Tooltip format.md
│ │ ├── 双轴折柱混合图表(BizCharts@4).md
│ │ ├── 可缩放的散点图.md
│ │ ├── 图例单选.md
│ │ ├── 图表标题(BizChart@4).md
│ │ ├── 圆形分面(BizCharts@4).md
│ │ ├── 圆角柱状图(BizCharts@4).md
│ │ ├── 在表格中使用.md
│ │ ├── 坐标轴显示首尾刻度点.md
│ │ ├── 坐标轴标题(BizCharts@4).md
│ │ ├── 基础仪表盘(BizCharts@4).md
│ │ ├── 基础图表全局主题配置.md
│ │ ├── 基础散点图(BizCharts@4).md
│ │ ├── 基础条形图(BizCharts@4).md
│ │ ├── 基础柱状图(BizCharts@4).md
│ │ ├── 基础柱状图(Interval).md
│ │ ├── 基础漏斗图(BizCharts@4).md
│ │ ├── 基础点图(Point).md
│ │ ├── 基础箱型图(BizCharts@4).md
│ │ ├── 基础面积图(BizCharts@4).md
│ │ ├── 基础面积图(Area).md
│ │ ├── 基础饼图(BizCharts@4).md
│ │ ├── 堆叠条形图(BizCharts@4).md
│ │ ├── 堆叠柱状图(BizCharts@4).md
│ │ ├── 堆叠柱状图:label自动隐藏.md
│ │ ├── 堆叠柱状图排序(BizCharts@4).md
│ │ ├── 堆叠面积图(BizCharts@4).md
│ │ ├── 多view slider(BizCharts@4.x).md
│ │ ├── 多层饼图(BizCharts@4.0).md
│ │ ├── 多形状散点图(BizCharts@4).md
│ │ ├── 多条阶梯折线图(BizCharts@4).md
│ │ ├── 多段区间条形图(BizCharts@4).md
│ │ ├── 多级 tree 分面(BizCharts@4).md
│ │ ├── 多色南丁格尔玫瑰图(BizCharts@4).md
│ │ ├── 多色折线图(BizCharts@4).md
│ │ ├── 多色虚实折线图(BizCharts@4).md
│ │ ├── 存在空值的面积图(BizCharts@4).md
│ │ ├── 实时更新折线图(BizCharts@4.x).md
│ │ ├── 对比漏斗图(bizCharts@4).md
│ │ ├── 尖底漏斗图(BizCharts@4).md
│ │ ├── 嵌套饼图(BizCharts@4).md
│ │ ├── 带有label的条形图(BizCharts@4).md
│ │ ├── 平滑虚线折线图.md
│ │ ├── 平行柱 控制 间距.md
│ │ ├── 弧形链接图(BizCharts@4).md
│ │ ├── 弧形链接线(Edge).md
│ │ ├── 折线-水位图(辅助线).md
│ │ ├── 折线图特定区域变色(BizCharts@4).md
│ │ ├── 控制透明色.md
│ │ ├── 散点图+趋势线(BizCharts@4).md
│ │ ├── 数据全部为零时显示Y轴.md
│ │ ├── 日历色块图(BizCharts@4).md
│ │ ├── 日常作息可视化(BizCharts@4).md
│ │ ├── 旭日图(BizCharts@4).md
│ │ ├── 普通折线图(BizCharts@4).md
│ │ ├── 有负值的基础面积图(BizCharts@4).md
│ │ ├── 极坐标下的柱状图(Coordinate).md
│ │ ├── 极坐标分组柱状图(BizCharts@4).md
│ │ ├── 极简Demo.md
│ │ ├── 极简环图(BizCharts@4).md
│ │ ├── 柱状图 color label callback自定义配置.md
│ │ ├── 柱状图背景常亮.md
│ │ ├── 柱状图鼠标hover样式.md
│ │ ├── 框选高亮散点图(BizCharts@4).md
│ │ ├── 桑基图布局(BizCharts@4).md
│ │ ├── 气泡图(BizCharts@4).md
│ │ ├── 气泡散点图.md
│ │ ├── 水波图(BizCharts@4.x).md
│ │ ├── 渐变条形图带label(BizCharts@4).md
│ │ ├── 渐变网格折线图 LineAdvance.md
│ │ ├── 渐变色折线图(BizCharts@4).md
│ │ ├── 渐变色配置示范.md
│ │ ├── 热力图(BizCharts@4).md
│ │ ├── 热力图(Heatmap).md
│ │ ├── 父容器transform scale导致tooltip位置错误.md
│ │ ├── 玫瑰图-限定角度范围(BizCharts@4).md
│ │ ├── 环图 pieStyle 样式问题.md
│ │ ├── 环形盘(BizCharts@4).md
│ │ ├── 百分比堆叠柱状图(BizCharts@4).md
│ │ ├── 百分比堆叠面积图(BizCharts@4).md
│ │ ├── 直方图(BizCharts@4).md
│ │ ├── 矩形树图(BizCharts@4).md
│ │ ├── 禁止lable自动隐藏和旋转.md
│ │ ├── 箱形图(Schema).md
│ │ ├── 缩略轴使用demo.md
│ │ ├── 股票图与范围区域图(BizCharts@4).md
│ │ ├── 股票图于柱状图(BizCharts@4).md
│ │ ├── 自定义 tooltip 为表格(BizCharts@4).md
│ │ ├── 自定义active-region背景色.md
│ │ ├── 自定义tooltip样式_Legend Marker(BizCharts@4).md
│ │ ├── 自定义主题(bizcharts@4.x).md
│ │ ├── 自定义图例(BizCharts@4).md
│ │ ├── 自定义图形交互 registerInteraction.md
│ │ ├── 自定义柱状图hover背景色.md
│ │ ├── 自定义柱状图(BizCharts@4).md
│ │ ├── 色块图(BizCharts@4).md
│ │ ├── 色块图(Polygon).md
│ │ ├── 词云(BizCharts@4.x).md
│ │ ├── 财年累计返利趋势变化.md
│ │ ├── 路径动画(Path).md
│ │ ├── 选中样式设置(BizCharts@4).md
│ │ ├── 阶梯折线图(BizCharts@4).md
│ │ ├── 雷达图 Axis配置与 Tooltip开启crosshairs.md
│ │ ├── 雷达图 圆圈底纹(Bizcharts@4).md
│ │ ├── 雷达图(BizCharts@4).md
│ │ ├── 雷达图(Line组件).md
│ │ ├── 雷达图-图片标注(BizCharts@4).md
│ │ ├── 雷达图复杂曲线(BizCharts@4).md
│ │ ├── 非对称漏斗图(BizCharts@4).md
│ │ ├── 饼图-分割图(Bizcharts@4).md
│ │ ├── 饼图默认选中(@BizCharts 4.x).md
│ │ ├── 饼图(theta).md
│ │ └── 默认选中-基础条形图(BizCharts@4).md
│ ├── Plots
│ │ ├── plot 升级指南
│ │ │ └── 4.1 Plots 升级文档.md
│ │ ├── 图表
│ │ │ ├── AreaChart.md
│ │ │ ├── BarChart.md
│ │ │ ├── BulletChart.md
│ │ │ ├── CalendarChart.md
│ │ │ ├── ColumnChart.md
│ │ │ ├── DensityHeatmapChart.md
│ │ │ ├── DonutChart.md
│ │ │ ├── FunnelChart.md
│ │ │ ├── GaugeChart.md
│ │ │ ├── GroupedBarChart.md
│ │ │ ├── GroupedColumnChart.md
│ │ │ ├── GroupedRoseChart.md
│ │ │ ├── HeatmapChart.md
│ │ │ ├── HistogramChart.md
│ │ │ ├── LineChart.md
│ │ │ ├── LiquidChart.md
│ │ │ ├── PieChart.md
│ │ │ ├── RadarChart.md
│ │ │ ├── RangeBarChart.md
│ │ │ ├── RangeColumnChart.md
│ │ │ ├── RoseChart.md
│ │ │ ├── ScatterChart.md
│ │ │ ├── StackedAreaChart.md
│ │ │ ├── StackedBarChart.md
│ │ │ ├── StackedColumnChart.md
│ │ │ ├── StackedRoseChart.md
│ │ │ ├── StepLineChart.md
│ │ │ ├── TreemapChart.md
│ │ │ ├── WaterfallChart.md
│ │ │ └── WordCloudChart.md
│ │ └── 迷你图表
│ │ │ ├── ProgressChart.md
│ │ │ ├── TinyAreaChart.md
│ │ │ └── TinyLineChart.md
│ └── 使用指南
│ │ ├── data.json
│ │ ├── 基础教程
│ │ ├── BizCharts 4.0 升级.md
│ │ ├── GComponent的使用介绍.md
│ │ ├── 图表事件使用.md
│ │ ├── 快速开始.md
│ │ └── 数据格式化和重命名.md
│ │ └── 开发者教程
│ │ ├── DataSet Api.md
│ │ ├── DataSet Transform.md
│ │ ├── Label属性及自定义label.md
│ │ ├── 使用DataSet.md
│ │ ├── 绘图属性Style.md
│ │ ├── 自定义主题.md
│ │ ├── 自定义图形.md
│ │ └── 配置动画.md
├── BizGoblin
│ ├── API文档
│ │ ├── Axis.md
│ │ ├── Chart.md
│ │ ├── Coord.md
│ │ ├── Geom.md
│ │ ├── Guide.md
│ │ ├── Legend.md
│ │ └── Tooltip.md
│ ├── Demo
│ │ ├── BizGoblin折线图.md
│ │ ├── bizGoblin多折线图.md
│ │ ├── bizgoblin分组柱状图.md
│ │ ├── bizgoblin区域图(存在空值).md
│ │ ├── bizgoblin区间柱状图.md
│ │ ├── bizgoblin圆弧柱状图.md
│ │ ├── bizgoblin基础条形图.md
│ │ ├── bizgoblin基础柱状图.md
│ │ ├── bizgoblin基础面积图.md
│ │ ├── bizgoblin基础饼图.md
│ │ ├── bizgoblin层叠柱状图.md
│ │ ├── bizgoblin层叠面积图.md
│ │ ├── bizgoblin带负值面积图.md
│ │ ├── bizgoblin散点图.md
│ │ ├── bizgoblin玫瑰图.md
│ │ ├── bizgoblin百分比层叠柱状图.md
│ │ ├── bizgoblin百分比层叠面积图.md
│ │ ├── bizgoblin雷达图.md
│ │ ├── bizgolin气泡图.md
│ │ └── 自定义图例.md
│ └── 使用指南
│ │ ├── 图表介绍.md
│ │ ├── 常见问题.md
│ │ └── 快速入门.md
├── category_list.json
└── 常见问题
│ └── faq.md
├── gulpfile.js
├── manifest.json
├── package.json
├── src
├── adapter
│ ├── Guide.tsx
│ └── paddingCheck.ts
├── animations.ts
├── boundary
│ ├── ErrorBoundary.tsx
│ └── withContainer.tsx
├── components
│ ├── Annotation
│ │ ├── arc.tsx
│ │ ├── base.tsx
│ │ ├── dataMarker.tsx
│ │ ├── dataRegion.tsx
│ │ ├── html.tsx
│ │ ├── image.tsx
│ │ ├── index.tsx
│ │ ├── line.tsx
│ │ ├── reactElement
│ │ │ ├── component.ts
│ │ │ └── index.tsx
│ │ ├── region.tsx
│ │ ├── regionFilter.tsx
│ │ └── text.tsx
│ ├── Axis
│ │ └── index.tsx
│ ├── Chart
│ │ ├── chartHelper.ts
│ │ ├── events.ts
│ │ └── index.tsx
│ ├── Coordinate
│ │ ├── coord.tsx
│ │ └── index.tsx
│ ├── Effects
│ │ └── index.tsx
│ ├── Facet
│ │ └── index.tsx
│ ├── Interaction
│ │ ├── brush.tsx
│ │ └── index.tsx
│ ├── Legend
│ │ ├── actions.ts
│ │ └── index.tsx
│ ├── Slider
│ │ └── index.tsx
│ ├── Tooltip
│ │ ├── ReactTooltip.tsx
│ │ ├── actions.ts
│ │ ├── index.scss
│ │ ├── index.tsx
│ │ └── inner.tsx
│ └── View
│ │ ├── index.tsx
│ │ └── viewHelper.ts
├── connector
│ └── createTooltipConnector.ts
├── context
│ ├── canvas.tsx
│ ├── group.tsx
│ ├── root.tsx
│ └── view.tsx
├── core.ts
├── createPlot.tsx
├── extend
│ └── scale
│ │ ├── linear-tick.ts
│ │ └── scale.ts
├── g-components
│ ├── Base
│ │ ├── Helper.ts
│ │ ├── events.ts
│ │ └── index.tsx
│ ├── Canvas.tsx
│ ├── Circle.tsx
│ ├── Ellipse.tsx
│ ├── Group.tsx
│ ├── Image.tsx
│ ├── Line.tsx
│ ├── Marker.tsx
│ ├── Path.tsx
│ ├── Polygon.tsx
│ ├── Polyline.tsx
│ ├── Rect.tsx
│ ├── Text.tsx
│ ├── index.ts
│ └── reconciler
│ │ └── index.tsx
├── g2-all.ts
├── geometry
│ ├── Area.tsx
│ ├── Base.tsx
│ ├── Edge.tsx
│ ├── Heatmap.tsx
│ ├── Interval.tsx
│ ├── Label.tsx
│ ├── Line.tsx
│ ├── LineAdvance.tsx
│ ├── Path.tsx
│ ├── Point.tsx
│ ├── Polygon.tsx
│ ├── Schema.tsx
│ ├── actions.ts
│ └── index.tsx
├── global.d.ts
├── hooks
│ ├── useChartInstance.tsx
│ ├── useChartView.tsx
│ └── useTheme.ts
├── index.tsx
├── interface.ts
├── plots
│ ├── AreaChart.tsx
│ ├── BarChart.tsx
│ ├── BubbleChart.tsx
│ ├── BulletChart.tsx
│ ├── CalendarChart.tsx
│ ├── ColumnChart.tsx
│ ├── DensityHeatmapChart.tsx
│ ├── DonutChart.tsx
│ ├── DualAxesChart.tsx
│ ├── FunnelChart.tsx
│ ├── GaugeChart.tsx
│ ├── GroupedBarChart.tsx
│ ├── GroupedColumnChart.tsx
│ ├── GroupedRoseChart.tsx
│ ├── HeatmapChart.tsx
│ ├── HistogramChart.tsx
│ ├── LineChart.tsx
│ ├── LiquidChart.tsx
│ ├── PercentStackedAreaChart.tsx
│ ├── PercentStackedBarChart.tsx
│ ├── PercentStackedColumnChart.tsx
│ ├── PieChart.tsx
│ ├── PlotAdapter.tsx
│ ├── ProgressChart.tsx
│ ├── RadarChart.tsx
│ ├── RangeBarChart.tsx
│ ├── RangeColumnChart.tsx
│ ├── RingProgressChart.tsx
│ ├── RoseChart.tsx
│ ├── ScatterChart.tsx
│ ├── StackedAreaChart.tsx
│ ├── StackedBarChart.tsx
│ ├── StackedColumnChart.tsx
│ ├── StackedRoseChart.tsx
│ ├── StepLineChart.tsx
│ ├── TinyAreaChart.tsx
│ ├── TinyColumnChart.tsx
│ ├── TinyLineChart.tsx
│ ├── TreemapChart.tsx
│ ├── WaterfallChart.tsx
│ ├── WordCloudChart.tsx
│ ├── core
│ │ ├── dependents.ts
│ │ ├── interface.ts
│ │ └── polyfill.ts
│ ├── index.tsx
│ ├── plots.tsx
│ └── sparkline.tsx
├── theme
│ └── index.tsx
└── utils
│ ├── cloneDeep.ts
│ ├── compareProps.ts
│ ├── constant.ts
│ ├── data-transform
│ ├── fold.ts
│ ├── minifyNum.ts
│ ├── partition.ts
│ ├── percentage.ts
│ ├── simple-sort-by.ts
│ ├── splitBySeparator.ts
│ └── sum.ts
│ ├── getElementSize.ts
│ ├── index.ts
│ ├── isEqual.ts
│ ├── pickWithout.ts
│ ├── plotTools.ts
│ ├── shallowEqual.ts
│ ├── tranPropsToArray.ts
│ └── transBooleanCfg.ts
├── tsconfig.json
├── uitest
├── create.js
├── index.js
└── snapshot
│ ├── Gemo-line.test.json
│ ├── area-areaWithNull 测试.test.json
│ ├── area-stackingArea 测试.test.json
│ ├── feature-g2Funciton 测试.test.json
│ ├── feature-pure 测试.test.json
│ ├── geometry-interval 测试.test.json
│ └── geometry-line 测试.test.json
├── unittest
├── annotation
│ ├── base-spec.tsx
│ └── react-spec.tsx
├── boundary
│ └── ErrorBoundary-spec.tsx
├── components
│ ├── Chart-data-update-spec.tsx
│ ├── Chart-spec.tsx
│ ├── Facet-spec.tsx
│ ├── Facet-spex-2.tsx
│ ├── Legend-spec.tsx
│ ├── react-tooltip-spec.tsx
│ └── resize-observer-spec.tsx
├── event-spec.tsx
├── exports
│ └── theme-spec.tsx
├── geometry
│ ├── Interval-spec.tsx
│ ├── Line-spec.tsx
│ ├── LineAdvance-spec.tsx
│ └── Point-spec.tsx
├── pickWithout-spec.tsx
├── plots-base
│ ├── BasePlot-spec.tsx
│ └── __snapshots__
│ │ └── BasePlot-spec.tsx.snap
├── plots
│ ├── AreaChart-spec.tsx
│ ├── BarChart-spec.tsx
│ ├── BubbleChart-spec.tsx
│ ├── BulletChart-spec.tsx
│ ├── CalendarChart-spec.tsx
│ ├── ColumnChart-spec.tsx
│ ├── DensityHeatmapChart-spec.tsx
│ ├── DonutChart-spec.tsx
│ ├── FunnelChart-spec.tsx
│ ├── GaugeChart-spec.tsx
│ ├── GroupedBarChart-spec.tsx
│ ├── GroupedColumnChart-spec.tsx
│ ├── GroupedRoseChart-spec.tsx
│ ├── HeatmapChart-spec.tsx
│ ├── LineChart-spec.tsx
│ ├── LiquidChart-spec.tsx
│ ├── PercentStackedAreaChart-spec.tsx
│ ├── PercentStackedBarChart-spec.tsx
│ ├── PercentStackedColumnChart-spec.tsx
│ ├── PieChart-spec.tsx
│ ├── ProgressChart-spec.tsx
│ ├── RadarChart-spec.tsx
│ ├── RangeBarChart-spec.tsx
│ ├── RangeColumnChart-spec.tsx
│ ├── RingProgressChart-spec.tsx
│ ├── RoseChart-spec.tsx
│ ├── ScatterChart-spec.tsx
│ ├── StackedAreaChart-spec.tsx
│ ├── StackedBarChart-spec.tsx
│ ├── StackedColumnChart-spec.tsx
│ ├── StackedRoseChart-spec.tsx
│ ├── StepLineChart-spec.tsx
│ ├── TinyAreaChart-spec.tsx
│ ├── TinyColumnChart-spec.tsx
│ ├── TinyLineChart-spec.tsx
│ ├── TreemapChart-spec.tsx
│ ├── WaterfallChart-spec.tsx
│ ├── WordCloudChart-spec.tsx
│ ├── __snapshots__
│ │ ├── BarChart-spec.tsx.snap
│ │ ├── CalendarChart-spec.tsx.snap
│ │ ├── ColumnChart-spec.tsx.snap
│ │ ├── DensityHeatmapChart-spec.tsx.snap
│ │ ├── FunnelChart-spec.tsx.snap
│ │ ├── GaugeChart-spec.tsx.snap
│ │ ├── GroupedBarChart-spec.tsx.snap
│ │ ├── GroupedColumnChart-spec.tsx.snap
│ │ ├── GroupedRoseChart-spec.tsx.snap
│ │ ├── HeatmapChart-spec.tsx.snap
│ │ ├── LineChart-spec.tsx.snap
│ │ ├── LiquidChart-spec.tsx.snap
│ │ ├── PercentStackedAreaChart-spec.tsx.snap
│ │ ├── PercentStackedBarChart-spec.tsx.snap
│ │ ├── PercentStackedColumnChart-spec.tsx.snap
│ │ ├── PieChart-spec.tsx.snap
│ │ ├── ProgressChart-spec.tsx.snap
│ │ ├── RadarChart-spec.tsx.snap
│ │ ├── RangeBarChart-spec.tsx.snap
│ │ ├── RangeColumnChart-spec.tsx.snap
│ │ ├── RingProgressChart-spec.tsx.snap
│ │ ├── RoseChart-spec.tsx.snap
│ │ ├── ScatterChart-spec.tsx.snap
│ │ ├── StackedAreaChart-spec.tsx.snap
│ │ ├── StackedBarChart-spec.tsx.snap
│ │ ├── StackedColumnChart-spec.tsx.snap
│ │ ├── StackedRoseChart-spec.tsx.snap
│ │ ├── StepLineChart-spec.tsx.snap
│ │ ├── TinyAreaChart-spec.tsx.snap
│ │ ├── TinyColumnChart-spec.tsx.snap
│ │ └── TinyLineChart-spec.tsx.snap
│ └── _update-option-spec.tsx
├── scale
│ ├── cust-scale-spec.tsx
│ ├── cust-scale
│ │ ├── scale.ts
│ │ └── tickMethod.ts
│ └── scale-spec.tsx
├── setup.js
├── shallowEqual-spec.tsx
├── tools
│ ├── simulate.ts
│ └── sleep.ts
├── utils
│ ├── percentage-spec.tsx
│ └── transBooleanCfg-spec.tsx
└── version-spec.tsx
└── webpack.config.js
/.eslintignore:
--------------------------------------------------------------------------------
1 | lib/
2 | .storybook/
3 | __stories__/
4 | test/_helpers/
5 | webpack.config.js
6 | umd/
7 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | // 文档可以看 https://pro.ant.design/blog/use-eslint-typescript-cn
2 | module.exports = {
3 | extends: [require.resolve('@umijs/fabric/dist/eslint')],
4 | globals: {},
5 | rules: {
6 | 'import/no-extraneous-dependencies': 0,
7 | 'no-self-compare': 0,
8 | 'max-classes-per-file': 0,
9 | 'no-underscore-dangle': 0,
10 | 'lines-between-class-members': 0,
11 | '@typescript-eslint/lines-between-class-members': 0,
12 | ' @typescript-eslint/consistent-type-imports': 0,
13 | 'class-methods-use-this': 0,
14 | 'no-lonely-if': 0,
15 | 'no-param-reassign': 0,
16 | 'no-useless-escape': 0,
17 | 'no-plusplus': 0,
18 | 'react/no-typos': 0,
19 | 'prefer-destructuring': 0
20 | }
21 | };
22 |
--------------------------------------------------------------------------------
/.fatherrc.js:
--------------------------------------------------------------------------------
1 | export default {
2 | entry: 'src/index.tsx',
3 | esm: {
4 | type: 'babel',
5 | importLibToEs: true,
6 | },
7 | cjs: 'babel',
8 | // umd: true,
9 | };
10 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | BizCharts Version:
2 | Platform:
3 | Mini Showcase(like screenshots):
4 | forck and create a demo: https://bizcharts.net/product/BizCharts4/demo/306
5 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .history
3 | node_modules
4 | lib
5 | esm
6 | es
7 | umd
8 | .eslintcache
9 |
10 | # npm
11 | yarn.lock
12 | npm-debug.log
13 | yarn-error.log
14 |
15 |
--------------------------------------------------------------------------------
/.prettierrc.js:
--------------------------------------------------------------------------------
1 | const fabric = require('@umijs/fabric');
2 |
3 | module.exports = {
4 | ...fabric.prettier,
5 | };
6 |
--------------------------------------------------------------------------------
/.storybook/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "rules": {
3 | "import/no-extraneous-dependencies": [2, {
4 | "devDependencies": true
5 | }],
6 | "global-require": 2
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/.storybook/main.js:
--------------------------------------------------------------------------------
1 | const path = require('path');
2 |
3 | module.exports = {
4 | addons: [
5 | '@storybook/addon-knobs',
6 | '@storybook/addon-links',
7 | '@storybook/addon-actions',
8 | '@storybook/addon-backgrounds',
9 | '@storybook/addon-docs',
10 | ]
11 | };
--------------------------------------------------------------------------------
/.storybook/webpack.config.js:
--------------------------------------------------------------------------------
1 | const path = require('path');
2 |
3 | module.exports = ({ config }) => {
4 | // babel loader is father 30%
5 | config.module.rules.push({
6 | test: /\.(ts|tsx)$/,
7 | loader: require.resolve('babel-loader'),
8 | options: {
9 | presets: [
10 | '@babel/preset-typescript',
11 | [
12 | 'umi',
13 | {
14 | targets: {
15 | browsers: ['last 2 versions'],
16 | },
17 | },
18 | ],
19 | ],
20 | },
21 | });
22 | config.resolve.extensions.push('.ts', '.tsx');
23 | config.module.rules.push(
24 | {
25 | test: /\.s?css$/,
26 | use: ['style-loader', 'raw-loader', 'sass-loader'],
27 | include: [path.resolve(__dirname, '../css/')],
28 | },
29 | {
30 | test: /\.svg$/,
31 | use: [
32 | {
33 | loader: 'babel-loader',
34 | query: {
35 | presets: ['airbnb'],
36 | },
37 | },
38 | ],
39 | },
40 | {
41 | test: /\.jsx$/,
42 | use: [
43 | {
44 | loader: 'babel-loader',
45 | query: {
46 | presets: ['airbnb'],
47 | },
48 | },
49 | ],
50 | },
51 | );
52 | config.resolve.extensions.push('.js', '.jsx');
53 | config.resolve.alias={
54 | ...config.resolve.alias,
55 | '@antv/g2': path.resolve(__dirname, '../node_modules/@antv/g2'),
56 | }
57 | return config;
58 | };
59 |
--------------------------------------------------------------------------------
/SECURITY.md:
--------------------------------------------------------------------------------
1 | # Reporting Security Issues
2 | If you believe you have found a security vulnerability in BizCharts, we encourage you to let us know right away. We will investigate all legitimate reports and do our best to quickly fix the problem.
3 |
4 |
5 | Please send the content to the following e-mail:
6 | - huanian.chn@alibaba-inc.com (以昕)
7 | - fengyue@alibaba-inc.com (风月)
8 |
--------------------------------------------------------------------------------
/__stories__/area.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import areaWithNull from '../demos/area/areaWithNull';
5 | import basicArea from '../demos/area/basicArea';
6 | import basicAreaWithNegativeValues from '../demos/area/basicAreaWithNegativeValues';
7 | import colorBlock from '../demos/area/colorBlock';
8 | import intervalArea from '../demos/area/intervalArea';
9 | import percentStackingArea from '../demos/area/percentStackingArea';
10 | import stackingArea from '../demos/area/stackingArea';
11 |
12 | storiesOf('area', module).add('存在空值的面积图', areaWithNull);
13 | storiesOf('area', module).add('基础面积图', basicArea);
14 | storiesOf('area', module).add('有负值的基础面积图', basicAreaWithNegativeValues);
15 | storiesOf('area', module).add('色块图', colorBlock);
16 | storiesOf('area', module).add('区间面积图', intervalArea);
17 | storiesOf('area', module).add('百分比堆叠面积图', percentStackingArea);
18 | storiesOf('area', module).add('堆叠面积图', stackingArea);
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/__stories__/base.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 | import { withInfo } from '@storybook/addon-info';
4 |
5 | import AutoFit, { ChangeSize } from '../demos/components/autoFit';
6 | import Coordinate from '../demos/components/coordinate';
7 | import View from '../demos/components/view';
8 | import Annotation from '../demos/components/annotation';
9 | import AnnotationText from '../demos/components/annotation-text';
10 |
11 |
12 | withInfo({ info: '' });
13 |
14 | const stories = storiesOf('基础组件', module);
15 | stories.add('Chart autoFit', AutoFit);
16 | stories.add('Change Chart Size', ChangeSize);
17 | stories.add('Coordinate', Coordinate);
18 | stories.add('annotation', Annotation);
19 | stories.add('annotation-text', AnnotationText);
20 | stories.add('View', View);
21 |
--------------------------------------------------------------------------------
/__stories__/box.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import basicBox from '../demos/box/basicBox'
5 |
6 | storiesOf('box', module).add('基础箱型图', basicBox);
7 |
--------------------------------------------------------------------------------
/__stories__/bugs.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import ViewChange from '../demos/bugs/view-changeData';
5 | import Columntree from '../demos/features/facet';
6 |
7 | storiesOf('bugs', module)
8 | .add('Columntree', () => )
9 | .add('ViewChange', () => );
10 |
--------------------------------------------------------------------------------
/__stories__/candle.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import stock from '../demos/candle/stock'
5 |
6 | storiesOf('candle', module).add('股票图于柱状图', stock);
7 |
--------------------------------------------------------------------------------
/__stories__/dashboard.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import basicDashboard from '../demos/dashboard/basicDashboard'
5 |
6 | storiesOf('dashboard', module).add('基础仪表盘', basicDashboard);
7 |
--------------------------------------------------------------------------------
/__stories__/feature.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import Pure from '../demos/features/pure';
5 | import Transform from '../demos/features/transform';
6 | import Effects from '../demos/features/effects';
7 | import Resize from '../demos/features/resize';
8 | import ChangeData from '../demos/features/changeData';
9 | import Slider from '../demos/features/slider';
10 | import Selected from '../demos/features/selected';
11 | import ChartManager from '../demos/features/chartManager';
12 | import Filter from '../demos/features/filter';
13 | import Reconciler from '../demos/features/fiber-reconciler';
14 | import TooltipLinkage from '../demos/features/tooltip-linkage';
15 | import JsxTooltip from '../demos/features/JsxTooltip';
16 |
17 | storiesOf('features', module)
18 | .add('Pure', Pure)
19 | .add('transform', Transform)
20 | .add('effects', Effects)
21 | .add('resize', Resize)
22 | .add('changeData', ChangeData)
23 | .add('slider', Slider)
24 | .add('selected', Selected)
25 | .add('chartManager', ChartManager)
26 | .add('filter', Filter)
27 | .add('TooltipLinkage', TooltipLinkage)
28 | .add('JsxTooltip', JsxTooltip)
29 | .add('reconciler', () => );
30 |
--------------------------------------------------------------------------------
/__stories__/funnel.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import basicFunnel from '../demos/funnel/basicFunnel'
5 |
6 | storiesOf('funnel', module).add('基础漏斗图', basicFunnel);
7 |
--------------------------------------------------------------------------------
/__stories__/g.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import Demo from '../demos/g-components/basic'
5 |
6 | storiesOf('g-components', module).add('basic', Demo);
7 |
--------------------------------------------------------------------------------
/__stories__/geometry.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import Line from '../demos/geom/line';
5 | import Interval from '../demos/geom/interval';
6 | import IntervalGroup from '../demos/geom/interval-group';
7 | import LineAdvance from '../demos/geom/LineAdvance';
8 |
9 | storiesOf('geometry', module).add('line', Line);
10 | storiesOf('geometry', module).add('Interval', Interval);
11 | storiesOf('geometry', module).add('Interval-group', IntervalGroup);
12 | storiesOf('geometry', module).add('LineAdvance', LineAdvance);
13 |
--------------------------------------------------------------------------------
/__stories__/heatMap.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import calendar from '../demos/heatMap/calendar';
5 | import heatMap from '../demos/heatMap/heatMap';
6 |
7 | storiesOf('heatMap', module).add('热力图', heatMap);
8 | storiesOf('heatMap', module).add('日历热力图', calendar);
9 |
--------------------------------------------------------------------------------
/__stories__/line.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import gradientPolyline from '../demos/line/gradientPolyline';
5 | import ordinaryCurve from '../demos/line/ordinaryCurve';
6 | import ordinaryPolyline from '../demos/line/ordinaryPolyline';
7 | import stepPolyline from '../demos/line/stepPolyline';
8 |
9 | storiesOf('line', module).add('渐变色折线图', gradientPolyline);
10 | storiesOf('line', module).add('普通曲线图', ordinaryCurve);
11 | storiesOf('line', module).add('普通折线图', ordinaryPolyline);
12 | storiesOf('line', module).add('阶梯折线图', stepPolyline);
13 |
--------------------------------------------------------------------------------
/__stories__/path.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import Path from '../demos/geom/path';
5 |
6 | storiesOf('path', module).add('路径图', Path);
7 |
--------------------------------------------------------------------------------
/__stories__/pie.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import RoseChartLimitedAngleRange from '../demos/pie/RoseChart-limitedAngleRange'
5 | import basicPie from '../demos/pie/basicPie'
6 | import multicolorNightingaleRoseillustration from '../demos/pie/multicolorNightingaleRoseillustration'
7 | import nestedPie from '../demos/pie/nestedPie'
8 | import nightingaleRoseIllustration from '../demos/pie/nightingaleRoseIllustration'
9 | import nightingaleRosette from '../demos/pie/nightingaleRosette'
10 | import visualizationOfDailyWork from '../demos/pie/visualizationOfDailyWork'
11 |
12 | storiesOf('pie', module).add('玫瑰图-限定角度范围', RoseChartLimitedAngleRange);
13 | storiesOf('pie', module).add('基础饼图', basicPie);
14 | storiesOf('pie', module).add('多色南丁格尔玫瑰图', multicolorNightingaleRoseillustration);
15 | storiesOf('pie', module).add('嵌套饼图', nestedPie);
16 | storiesOf('pie', module).add('南丁格尔玫瑰环图', nightingaleRoseIllustration);
17 | storiesOf('pie', module).add('南丁格尔玫瑰图', nightingaleRosette);
18 | storiesOf('pie', module).add('日常作息可视化', visualizationOfDailyWork);
19 |
--------------------------------------------------------------------------------
/__stories__/plot.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 | import { withInfo } from '@storybook/addon-info';
4 |
5 | import { text, withKnobs, boolean, number, object, select } from '@storybook/addon-knobs';
6 |
7 | import Line from '../demos/plot/line';
8 | import Ring from '../demos/plot/ring';
9 | import Plots from '../demos/plot/plots';
10 | import Gauge from '../demos/plot/gauge';
11 | withInfo({ info: '' });
12 |
13 | const stories = storiesOf('createPlot', module);
14 | stories.add('line', () => (
15 |
21 | ));
22 |
23 | stories.add('ring', Ring);
24 | stories.add('plot-Charts', Plots);
25 | stories.add('自定义min max的gauge', Gauge);
26 |
--------------------------------------------------------------------------------
/__stories__/plots/area.stories.tsx:
--------------------------------------------------------------------------------
1 | import React, { useEffect, useState } from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import AreaChart from '../../src/plots/AreaChart';
5 |
6 | storiesOf('box', module).add('面积图', () => {
7 | const [ data, setData ] = useState([]);
8 | const option = {
9 | xField: 'Date',
10 | yField: 'scales',
11 | xAxis: {
12 | range: [0, 1],
13 | tickCount: 5,
14 | },
15 | }
16 | useEffect(() => {
17 | fetch('https://gw.alipayobjects.com/os/bmw-prod/1d565782-dde4-4bb6-8946-ea6a38ccf184.json')
18 | .then((res) => res.json())
19 | .then((data) => {
20 | setData(data);
21 | });
22 | }, [])
23 | return
24 | });
25 |
--------------------------------------------------------------------------------
/__stories__/point.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import basicPoint from '../demos/point/basicPoint'
5 | import bubble from '../demos/point/bubble'
6 | import multiShapeScatter from '../demos/point/multiShapeScatter'
7 |
8 | storiesOf('point', module).add('基础散点图', basicPoint);
9 | storiesOf('point', module).add('气泡图', bubble);
10 | storiesOf('point', module).add('多形状散点图', multiShapeScatter);
11 |
--------------------------------------------------------------------------------
/__stories__/radar.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | import radar from '../demos/radar/radar'
5 |
6 | storiesOf('radar', module).add('雷达图', radar);
7 |
--------------------------------------------------------------------------------
/__stories__/temp.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 |
4 | storiesOf('开发手册', module).add('模版', () =>
);
5 |
--------------------------------------------------------------------------------
/__stories__/theme.stories.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { storiesOf } from '@storybook/react';
3 | import { withInfo } from '@storybook/addon-info';
4 |
5 | import ThemedChart from '../demos/theme';
6 | withInfo({ info: '' });
7 |
8 | const stories = storiesOf('Theme', module);
9 | stories.add('Chart Theme', ThemedChart);
10 |
--------------------------------------------------------------------------------
/demos/adepter/coord.jsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/alibaba/BizCharts/0be043c2fe36dd1ef56fa252e7a075a0a31115b5/demos/adepter/coord.jsx
--------------------------------------------------------------------------------
/demos/adepter/geom-label.jsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/alibaba/BizCharts/0be043c2fe36dd1ef56fa252e7a075a0a31115b5/demos/adepter/geom-label.jsx
--------------------------------------------------------------------------------
/demos/bugs/plot-bar.jsx:
--------------------------------------------------------------------------------
1 | /* eslint-disable import/no-extraneous-dependencies */
2 | import React from "react";
3 | import { BarChart } from '../../src';
4 | const data = [
5 | {
6 | year: "1991",
7 | value: 5
8 | },
9 | {
10 | year: "1992",
11 | value: 4
12 | },
13 | {
14 | year: "1993",
15 | value: 3.5
16 | },
17 | {
18 | year: "1994",
19 | value: 5
20 | },
21 | {
22 | year: "1995",
23 | value: 4.9
24 | }
25 | ];
26 |
27 | function Basic(options) {
28 | return (
29 |
30 |
36 |
37 |
38 | );
39 | }
40 |
41 | export default Basic;
42 |
--------------------------------------------------------------------------------
/demos/components/axis.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Area,
5 | Axis,
6 | Tooltip,
7 | } from "../../src";
8 |
9 | const data = [
10 | {
11 | year: "1991",
12 | value: 3
13 | },
14 | {
15 | year: "1992",
16 | value: 4
17 | },
18 | {
19 | year: "1993",
20 | value: 3.5
21 | },
22 | {
23 | year: "1994",
24 | value: 5
25 | },
26 | {
27 | year: "1995",
28 | value: 4.9
29 | },
30 | {
31 | year: "1996",
32 | value: 6
33 | },
34 | {
35 | year: "1997",
36 | value: 7
37 | },
38 | {
39 | year: "1998",
40 | value: 9
41 | },
42 | {
43 | year: "1999",
44 | value: 13
45 | }
46 | ];
47 | function Basic() {
48 | const cols = {
49 | value: {
50 | min: 0
51 | },
52 | year: {
53 | range: [0, 1]
54 | }
55 | };
56 | return (
57 |
58 |
59 |
60 |
61 |
66 |
75 |
76 |
77 | );
78 | }
79 |
80 | export default Basic;
81 |
--------------------------------------------------------------------------------
/demos/components/coordinate.jsx:
--------------------------------------------------------------------------------
1 |
2 | import React from "react";
3 | import {
4 | Chart,
5 | Interval,
6 | Legend,
7 | Coordinate
8 | } from "../../src";
9 |
10 | const data = [
11 | { type: '一线城市', value: 0.19 },
12 | { type: '二线城市', value: 0.21 },
13 | { type: '三线城市', value: 0.27 },
14 | { type: '四线及以下', value: 0.33 },
15 | ];
16 |
17 | export default function Demo() {
18 | return
19 |
20 |
21 |
22 |
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/demos/external/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/demos/features/interaction.jsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/alibaba/BizCharts/0be043c2fe36dd1ef56fa252e7a075a0a31115b5/demos/features/interaction.jsx
--------------------------------------------------------------------------------
/demos/features/pure.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Interval,
5 | } from "../../src";
6 |
7 | const data = [
8 | {
9 | year: "1991",
10 | value: 3
11 | },
12 | {
13 | year: "1992",
14 | value: 4
15 | },
16 | {
17 | year: "1993",
18 | value: 3.5
19 | },
20 | {
21 | year: "1994",
22 | value: 5
23 | },
24 | {
25 | year: "1995",
26 | value: 4.9
27 | },
28 | {
29 | year: "1996",
30 | value: 6
31 | },
32 | {
33 | year: "1997",
34 | value: 7
35 | },
36 | {
37 | year: "1998",
38 | value: 9
39 | },
40 | {
41 | year: "1999",
42 | value: 13
43 | }
44 | ];
45 | function Basic() {
46 | return (
47 |
48 |
49 |
50 |
51 |
52 | );
53 | }
54 |
55 | export default Basic;
56 |
--------------------------------------------------------------------------------
/demos/features/selected.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Chart, Interval, Interaction } from '../../src';
3 |
4 | const data = [
5 | { year: '1951 年', sales: 38 },
6 | { year: '1952 年', sales: 52 },
7 | { year: '1956 年', sales: 61 },
8 | { year: '1957 年', sales: 45 },
9 | { year: '1958 年', sales: 48 },
10 | { year: '1959 年', sales: 38 },
11 | { year: '1960 年', sales: 38 },
12 | { year: '1962 年', sales: 38 },
13 | ];
14 |
15 |
16 | function Demo() {
17 | return
18 | {
19 | elements[1].setState('selected', true);
20 | }} active-region />
21 |
22 |
23 | }
24 |
25 | export default Demo;
26 |
--------------------------------------------------------------------------------
/demos/features/slider.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Chart, Line, Slider } from "../../src";
3 |
4 | // 数据源
5 | const data = [
6 | {
7 | month: "Jan",
8 | value: 51
9 | },
10 | {
11 | month: "Feb",
12 | value: 91
13 | },
14 | {
15 | month: "Mar",
16 | value: 34
17 | },
18 | {
19 | month: "Apr",
20 | value: 47
21 | },
22 | {
23 | month: "May",
24 | value: 63
25 | },
26 | {
27 | month: "June",
28 | value: 58
29 | },
30 | {
31 | month: "July",
32 | value: 56
33 | },
34 | {
35 | month: "Aug",
36 | value: 77
37 | },
38 | {
39 | month: "Sep",
40 | value: 99
41 | },
42 | {
43 | month: "Oct",
44 | value: 106
45 | },
46 | {
47 | month: "Nov",
48 | value: 88
49 | },
50 | {
51 | month: "Dec",
52 | value: 56
53 | }
54 | ];
55 |
56 | function Demo() {
57 | return
58 |
59 |
60 |
61 | }
62 |
63 |
64 |
65 | export default Demo;
66 |
67 |
68 |
--------------------------------------------------------------------------------
/demos/geom/area.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Area,
5 | Tooltip,
6 | } from "../../src";
7 |
8 | const data = [
9 | {
10 | year: "1991",
11 | value: 3
12 | },
13 | {
14 | year: "1992",
15 | value: 4
16 | },
17 | {
18 | year: "1993",
19 | value: 3.5
20 | },
21 | {
22 | year: "1994",
23 | value: 5
24 | },
25 | {
26 | year: "1995",
27 | value: 4.9
28 | },
29 | {
30 | year: "1996",
31 | value: 6
32 | },
33 | {
34 | year: "1997",
35 | value: 7
36 | },
37 | {
38 | year: "1998",
39 | value: 9
40 | },
41 | {
42 | year: "1999",
43 | value: 13
44 | }
45 | ];
46 | function Basic() {
47 | const cols = {
48 | value: {
49 | min: 0
50 | },
51 | year: {
52 | range: [0, 1]
53 | }
54 | };
55 | return (
56 |
74 | );
75 | }
76 |
77 | export default Basic;
78 |
--------------------------------------------------------------------------------
/demos/geom/interval-group.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Interval,
5 | Tooltip,
6 | } from "../../src";
7 |
8 | const data = [
9 | { name: 'London', 月份: 'Jan.', 月均降雨量: 18.9 },
10 | { name: 'London', 月份: 'Feb.', 月均降雨量: 28.8 },
11 | { name: 'London', 月份: 'Mar.', 月均降雨量: 39.3 },
12 | { name: 'London', 月份: 'Apr.', 月均降雨量: 81.4 },
13 | { name: 'London', 月份: 'May', 月均降雨量: 47 },
14 | { name: 'London', 月份: 'Jun.', 月均降雨量: 20.3 },
15 | { name: 'London', 月份: 'Jul.', 月均降雨量: 24 },
16 | { name: 'London', 月份: 'Aug.', 月均降雨量: 35.6 },
17 | { name: 'Berlin', 月份: 'Jan.', 月均降雨量: 12.4 },
18 | { name: 'Berlin', 月份: 'Feb.', 月均降雨量: 23.2 },
19 | { name: 'Berlin', 月份: 'Mar.', 月均降雨量: 34.5 },
20 | { name: 'Berlin', 月份: 'Apr.', 月均降雨量: 99.7 },
21 | { name: 'Berlin', 月份: 'May', 月均降雨量: 52.6 },
22 | { name: 'Berlin', 月份: 'Jun.', 月均降雨量: 35.5 },
23 | { name: 'Berlin', 月份: 'Jul.', 月均降雨量: 37.4 },
24 | { name: 'Berlin', 月份: 'Aug.', 月均降雨量: 42.4 },
25 | ];
26 |
27 | export default function() {
28 | return (
29 |
39 |
40 | )
41 | }
42 |
--------------------------------------------------------------------------------
/demos/geom/interval.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Interval,
5 | Coordinate,
6 | Tooltip,
7 | } from "../../src";
8 |
9 | const data = [
10 | {
11 | year: "1991",
12 | value: 3
13 | },
14 | {
15 | year: "1992",
16 | value: 4
17 | },
18 | {
19 | year: "1993",
20 | value: 3.5
21 | },
22 | {
23 | year: "1994",
24 | value: 5
25 | },
26 | {
27 | year: "1995",
28 | value: 4.9
29 | },
30 | {
31 | year: "1996",
32 | value: 6
33 | },
34 | {
35 | year: "1997",
36 | value: 7
37 | },
38 | {
39 | year: "1998",
40 | value: 9
41 | },
42 | {
43 | year: "1999",
44 | value: 13
45 | }
46 | ];
47 | function Basic(props) {
48 | const cfg = props || {}
49 | const cols = {
50 | value: {
51 | min: 0
52 | },
53 | year: {
54 | range: [0, 1]
55 | }
56 | };
57 | return (
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 | );
66 | }
67 |
68 | export default Basic;
69 |
--------------------------------------------------------------------------------
/demos/heatMap/heatMap.jsx:
--------------------------------------------------------------------------------
1 | import React, { useState, useEffect } from 'react';
2 | import {
3 | Chart,
4 | Tooltip,
5 | Axis,
6 | Legend,
7 | Annotation,
8 | Heatmap
9 | } from '../../src';
10 |
11 |
12 | function Demo() {
13 | const [data, setData] = useState([]);
14 | useEffect(() => {
15 | fetch('https://alifd.alibabausercontent.com/materials/@bizcharts/heatmap-image/0.3.0/mock.json')
16 | .then(res => res.json())
17 | .then(resData => {
18 | setData(resData);
19 | })
20 | }, [])
21 |
22 | return
31 |
34 |
35 |
36 |
37 |
42 |
43 | }
44 |
45 | export default Demo;
--------------------------------------------------------------------------------
/demos/interval/basicColumn.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Chart, Interval, Interaction } from '../../src';
3 |
4 | const data = [
5 | { year: '1951 年', sales: 38 },
6 | { year: '1952 年', sales: 52 },
7 | { year: '1956 年', sales: 61 },
8 | { year: '1957 年', sales: 45 },
9 | { year: '1958 年', sales: 48 },
10 | { year: '1959 年', sales: 38 },
11 | { year: '1960 年', sales: 38 },
12 | { year: '1962 年', sales: 38 },
13 | ];
14 |
15 |
16 | function Demo() {
17 | return
18 |
19 |
20 |
21 | }
22 |
23 | export default Demo;
24 |
--------------------------------------------------------------------------------
/demos/interval/groupedColumns.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Tooltip,
5 | Interval,
6 | } from "../../src";
7 |
8 | const data = [
9 | { name: 'London', 月份: 'Jan.', 月均降雨量: 18.9 },
10 | { name: 'London', 月份: 'Feb.', 月均降雨量: 28.8 },
11 | { name: 'London', 月份: 'Mar.', 月均降雨量: 39.3 },
12 | { name: 'London', 月份: 'Apr.', 月均降雨量: 81.4 },
13 | { name: 'London', 月份: 'May', 月均降雨量: 47 },
14 | { name: 'London', 月份: 'Jun.', 月均降雨量: 20.3 },
15 | { name: 'London', 月份: 'Jul.', 月均降雨量: 24 },
16 | { name: 'London', 月份: 'Aug.', 月均降雨量: 35.6 },
17 | { name: 'Berlin', 月份: 'Jan.', 月均降雨量: 12.4 },
18 | { name: 'Berlin', 月份: 'Feb.', 月均降雨量: 23.2 },
19 | { name: 'Berlin', 月份: 'Mar.', 月均降雨量: 34.5 },
20 | { name: 'Berlin', 月份: 'Apr.', 月均降雨量: 99.7 },
21 | { name: 'Berlin', 月份: 'May', 月均降雨量: 52.6 },
22 | { name: 'Berlin', 月份: 'Jun.', 月均降雨量: 35.5 },
23 | { name: 'Berlin', 月份: 'Jul.', 月均降雨量: 37.4 },
24 | { name: 'Berlin', 月份: 'Aug.', 月均降雨量: 42.4 },
25 | ];
26 |
27 | function Grouped() {
28 | return (
29 |
30 |
40 |
41 |
42 | );
43 | }
44 |
45 | export default Grouped;
46 |
--------------------------------------------------------------------------------
/demos/interval/intervalColumn.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Interval,
5 | } from "../../src";
6 |
7 | const Columnrange = () => {
8 | const data = [
9 | {
10 | x: "分类一",
11 | y: [76, 100]
12 | },
13 | {
14 | x: "分类二",
15 | y: [56, 108]
16 | },
17 | {
18 | x: "分类三",
19 | y: [38, 129]
20 | },
21 | {
22 | x: "分类四",
23 | y: [58, 155]
24 | },
25 | {
26 | x: "分类五",
27 | y: [45, 120]
28 | },
29 | {
30 | x: "分类六",
31 | y: [23, 99]
32 | },
33 | {
34 | x: "分类七",
35 | y: [18, 56]
36 | },
37 | {
38 | x: "分类八",
39 | y: [18, 34]
40 | }
41 | ];
42 | return (
43 |
44 |
45 |
46 | );
47 | }
48 |
49 | export default Columnrange;
50 |
--------------------------------------------------------------------------------
/demos/interval/polarCoordinate.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Tooltip,
5 | Interval,
6 | Coordinate
7 | } from "../../src";
8 |
9 | const data = [
10 | { name: 'London', 月份: 'Jan.', 月均降雨量: 18.9 },
11 | { name: 'London', 月份: 'Feb.', 月均降雨量: 28.8 },
12 | { name: 'London', 月份: 'Mar.', 月均降雨量: 39.3 },
13 | { name: 'London', 月份: 'Apr.', 月均降雨量: 81.4 },
14 | { name: 'London', 月份: 'May', 月均降雨量: 47 },
15 | { name: 'London', 月份: 'Jun.', 月均降雨量: 20.3 },
16 | { name: 'London', 月份: 'Jul.', 月均降雨量: 24 },
17 | { name: 'London', 月份: 'Aug.', 月均降雨量: 35.6 },
18 | { name: 'Berlin', 月份: 'Jan.', 月均降雨量: 12.4 },
19 | { name: 'Berlin', 月份: 'Feb.', 月均降雨量: 23.2 },
20 | { name: 'Berlin', 月份: 'Mar.', 月均降雨量: 34.5 },
21 | { name: 'Berlin', 月份: 'Apr.', 月均降雨量: 99.7 },
22 | { name: 'Berlin', 月份: 'May', 月均降雨量: 52.6 },
23 | { name: 'Berlin', 月份: 'Jun.', 月均降雨量: 35.5 },
24 | { name: 'Berlin', 月份: 'Jul.', 月均降雨量: 37.4 },
25 | { name: 'Berlin', 月份: 'Aug.', 月均降雨量: 42.4 },
26 | ];
27 |
28 | function Grouped() {
29 | return (
30 |
31 |
41 |
42 |
43 |
44 | );
45 | }
46 |
47 | export default Grouped;
48 |
49 |
--------------------------------------------------------------------------------
/demos/interval/stackedColumn.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import {
3 | Chart,
4 | Tooltip,
5 | Interval,
6 | } from "../../src";
7 |
8 | const data = [
9 | { name: 'London', 月份: 'Jan.', 月均降雨量: 18.9 },
10 | { name: 'London', 月份: 'Feb.', 月均降雨量: 28.8 },
11 | { name: 'London', 月份: 'Mar.', 月均降雨量: 39.3 },
12 | { name: 'London', 月份: 'Apr.', 月均降雨量: 81.4 },
13 | { name: 'London', 月份: 'May', 月均降雨量: 47 },
14 | { name: 'London', 月份: 'Jun.', 月均降雨量: 20.3 },
15 | { name: 'London', 月份: 'Jul.', 月均降雨量: 24 },
16 | { name: 'London', 月份: 'Aug.', 月均降雨量: 35.6 },
17 | { name: 'Berlin', 月份: 'Jan.', 月均降雨量: 12.4 },
18 | { name: 'Berlin', 月份: 'Feb.', 月均降雨量: 23.2 },
19 | { name: 'Berlin', 月份: 'Mar.', 月均降雨量: 34.5 },
20 | { name: 'Berlin', 月份: 'Apr.', 月均降雨量: 99.7 },
21 | { name: 'Berlin', 月份: 'May', 月均降雨量: 52.6 },
22 | { name: 'Berlin', 月份: 'Jun.', 月均降雨量: 35.5 },
23 | { name: 'Berlin', 月份: 'Jul.', 月均降雨量: 37.4 },
24 | { name: 'Berlin', 月份: 'Aug.', 月均降雨量: 42.4 },
25 | ];
26 |
27 | function Demo() {
28 | return (
29 |
30 |
39 |
40 |
41 | );
42 | }
43 |
44 | export default Demo;
45 |
--------------------------------------------------------------------------------
/demos/line/gradientPolyline.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Chart, Line } from '../../src';
3 |
4 | // 数据源
5 | const data = [
6 | { month: "2015-01-01", acc: 84.0 },
7 | { month: "2015-02-01", acc: 14.9 },
8 | { month: "2015-03-01", acc: 17.0 },
9 | { month: "2015-04-01", acc: 20.2 },
10 | { month: "2015-05-01", acc: 55.6 },
11 | { month: "2015-06-01", acc: 56.7 },
12 | { month: "2015-07-01", acc: 30.6 },
13 | { month: "2015-08-01", acc: 63.2 },
14 | { month: "2015-09-01", acc: 24.6 },
15 | { month: "2015-10-01", acc: 14.0 },
16 | { month: "2015-11-01", acc: 9.4 },
17 | { month: "2015-12-01", acc: 7.3 }
18 | ];
19 |
20 | function Demo() {
21 | return
22 |
27 |
28 | }
29 |
30 |
31 |
32 | export default Demo;
33 |
34 |
35 |
--------------------------------------------------------------------------------
/demos/line/ordinaryPolyline.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Chart, Line, Point } from '../../src';
3 |
4 | let year = 1990;
5 |
6 |
7 | // 数据源
8 | const data = new Array(1200).fill('').map(() => {
9 | return {
10 | year: year++,
11 | value: Math.round(Math.random())
12 | }
13 | });
14 |
15 |
16 | function Demo() {
17 | return
25 |
26 |
27 |
28 | }
29 |
30 | export default Demo;
31 |
32 |
33 |
--------------------------------------------------------------------------------
/demos/line/stepPolyline.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Chart, Line } from "../../src";
3 |
4 | // 数据源
5 | const data = [
6 | {
7 | month: "Jan",
8 | value: 51
9 | },
10 | {
11 | month: "Feb",
12 | value: 91
13 | },
14 | {
15 | month: "Mar",
16 | value: 34
17 | },
18 | {
19 | month: "Apr",
20 | value: 47
21 | },
22 | {
23 | month: "May",
24 | value: 63
25 | },
26 | {
27 | month: "June",
28 | value: 58
29 | },
30 | {
31 | month: "July",
32 | value: 56
33 | },
34 | {
35 | month: "Aug",
36 | value: 77
37 | },
38 | {
39 | month: "Sep",
40 | value: 99
41 | },
42 | {
43 | month: "Oct",
44 | value: 106
45 | },
46 | {
47 | month: "Nov",
48 | value: 88
49 | },
50 | {
51 | month: "Dec",
52 | value: 56
53 | }
54 | ];
55 |
56 | function Demo() {
57 | return
58 |
59 |
60 | }
61 |
62 |
63 |
64 | export default Demo;
65 |
66 |
67 |
--------------------------------------------------------------------------------
/demos/pie/RoseChart-limitedAngleRange.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | Chart,
4 | Interval,
5 | Tooltip,
6 | Axis,
7 | Coordinate
8 | } from '../../src';
9 |
10 | function Labelline () {
11 | const data = [
12 | { type: '分类一', value: 27 },
13 | { type: '分类二', value: 25 },
14 | { type: '分类三', value: 18 },
15 | { type: '分类四', value: 15 },
16 | { type: '分类五', value: 10 },
17 | { type: 'Other', value: 5 },
18 | ];
19 |
20 |
21 | return (
22 |
23 |
28 |
34 |
35 |
52 |
53 | );
54 | }
55 |
56 | export default Labelline;
57 |
--------------------------------------------------------------------------------
/demos/pie/multicolorNightingaleRoseillustration.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | Chart,
4 | Interval,
5 | Tooltip,
6 | Axis,
7 | Coordinate
8 | } from '../../src';
9 |
10 | function Labelline () {
11 | const data = [
12 | { year: '2001', population: 41.8 },
13 | { year: '2002', population: 38 },
14 | { year: '2003', population: 33.7 },
15 | { year: '2004', population: 30.7 },
16 | { year: '2005', population: 25.8 },
17 | { year: '2006', population: 31.7 },
18 | { year: '2007', population: 33 },
19 | { year: '2008', population: 46 },
20 | { year: '2009', population: 38.3 },
21 | { year: '2010', population: 28 },
22 | { year: '2011', population: 42.5 },
23 | { year: '2012', population: 30.3 },
24 | ];
25 |
26 |
27 | return (
28 |
29 |
30 |
31 |
32 |
45 |
46 | );
47 | }
48 |
49 | export default Labelline;
50 |
--------------------------------------------------------------------------------
/demos/pie/nightingaleRoseIllustration.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | Chart,
4 | Interval,
5 | Tooltip,
6 | Axis,
7 | Coordinate
8 | } from '../../src';
9 |
10 | function Labelline () {
11 | const data = [
12 | { year: '2001', population: 41.8 },
13 | { year: '2002', population: 38 },
14 | { year: '2003', population: 33.7 },
15 | { year: '2004', population: 30.7 },
16 | { year: '2005', population: 25.8 },
17 | { year: '2006', population: 31.7 },
18 | { year: '2007', population: 33 },
19 | { year: '2008', population: 46 },
20 | { year: '2009', population: 38.3 },
21 | { year: '2010', population: 28 },
22 | { year: '2011', population: 42.5 },
23 | { year: '2012', population: 30.3 },
24 | ];
25 |
26 |
27 | return (
28 |
29 |
30 |
31 |
32 |
44 |
45 | );
46 | }
47 |
48 | export default Labelline;
49 |
--------------------------------------------------------------------------------
/demos/pie/nightingaleRosette.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {
3 | Chart,
4 | Interval,
5 | Tooltip,
6 | Axis,
7 | Coordinate
8 | } from '../../src';
9 |
10 | function Labelline () {
11 | const data = [
12 | { year: '2001', population: 41.8 },
13 | { year: '2002', population: 38 },
14 | { year: '2003', population: 33.7 },
15 | { year: '2004', population: 30.7 },
16 | { year: '2005', population: 25.8 },
17 | { year: '2006', population: 31.7 },
18 | { year: '2007', population: 33 },
19 | { year: '2008', population: 46 },
20 | { year: '2009', population: 38.3 },
21 | { year: '2010', population: 28 },
22 | { year: '2011', population: 42.5 },
23 | { year: '2012', population: 30.3 },
24 | ];
25 |
26 |
27 | return (
28 |
29 |
30 |
31 |
32 |
45 |
46 | );
47 | }
48 |
49 | export default Labelline;
50 |
--------------------------------------------------------------------------------
/demos/plot/gauge.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { GaugeChart } from '../../src';
3 |
4 | function Demo() {
5 | return (
6 |
27 | );
28 | }
29 |
30 | export default Demo;
31 |
--------------------------------------------------------------------------------
/demos/plot/ring.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { Pie } from '@antv/g2plot';
3 | import { createPlot } from '../../src';
4 |
5 | const RingChart = createPlot(Pie);
6 |
7 | const data = [
8 | {
9 | "x": "大健康",
10 | "y": 20
11 | },
12 | {
13 | "x": "大淘系",
14 | "y": 20
15 | },
16 | {
17 | "x": "大文娱",
18 | "y": 20
19 | },
20 | {
21 | "x": "大物流",
22 | "y": 20
23 | },
24 | {
25 | "x": "海外",
26 | "y": 20
27 | },
28 | {
29 | "x": "基金",
30 | "y": 121
31 | },
32 | {
33 | "x": "生活服务",
34 | "y": 140
35 | },
36 | {
37 | "x": "新零售",
38 | "y": 151
39 | },
40 | {
41 | "x": "新兴业务",
42 | "y": 200
43 | },
44 | {
45 | "x": "云智能",
46 | "y": 79
47 | },
48 | {
49 | "x": "待定",
50 | "y": 30
51 | },
52 | {
53 | "x": "行业未定义",
54 | "y": 60
55 | }
56 | ];
57 | const config = {
58 | "title": {
59 | "visible": true,
60 | "text": "环形图"
61 | },
62 | "description": {
63 | "visible": true,
64 | "text": "一个简单的环形图"
65 | },
66 | "label": {
67 | "type": "spider"
68 | },
69 | "width": 580,
70 | "height": 460,
71 | "autoFit": false,
72 | "colorField": "x",
73 | "angleField": "y",
74 | }
75 |
76 | function Basic() {
77 | return
78 | }
79 |
80 | export default Basic;
81 |
--------------------------------------------------------------------------------
/demos/point/basicPoint.jsx:
--------------------------------------------------------------------------------
1 | import React, { useState, useEffect } from 'react';
2 | import {
3 | Chart,
4 | Point,
5 | } from '../../src';
6 |
7 |
8 | function Demo() {
9 | const [data, setData] = useState([]);
10 | useEffect(() => {
11 | fetch('https://alifd.alibabausercontent.com/materials/@bizcharts/point-scatter/0.2.8/mock.json')
12 | .then(res => res.json())
13 | .then(resData => {
14 | setData(resData);
15 | })
16 | }, [])
17 |
18 | return
25 |
32 |
33 | }
34 |
35 | export default Demo;
36 |
--------------------------------------------------------------------------------
/demos/point/multiShapeScatter.jsx:
--------------------------------------------------------------------------------
1 | import React, { useState, useEffect } from 'react';
2 | import {
3 | Chart,
4 | Point,
5 | } from '../../src';
6 |
7 |
8 | function Demo() {
9 | const [data, setData] = useState([]);
10 | useEffect(() => {
11 | fetch('https://alifd.alibabausercontent.com/materials/@bizcharts/point-scatter/0.2.8/mock.json')
12 | .then(res => res.json())
13 | .then(resData => {
14 | setData(resData);
15 | })
16 | }, [])
17 |
18 | return
24 |
31 |
32 | }
33 |
34 | export default Demo;
--------------------------------------------------------------------------------
/docs/BizCharts/API文档/data.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": 7,
3 | "name": "API文档",
4 | "name_en": "api",
5 | "product_id": 1,
6 | "parent_id": null,
7 | "rank": "0",
8 | "gmt_create": "2019-11-25T07:01:16.000Z",
9 | "gmt_modified": "2020-06-09T12:13:54.000Z",
10 | "is_deleted": 0,
11 | "is_avaliable": 1,
12 | "is_alinw": 0,
13 | "type": "normal",
14 | "externalPath": "/product/bizcharts/category/7/page/12",
15 | "creator_userid": null,
16 | "updator_userid": 11,
17 | "children": []
18 | }
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/Guide-html.md:
--------------------------------------------------------------------------------
1 | # Guide-html
2 |
3 | 
4 |
5 | ```js
6 | /**
7 | * guide-html
8 | */
9 |
10 | import React from 'react';
11 | import { Chart, Geom, Axis, Guide } from 'bizcharts@3.5.8';
12 |
13 | const { Html } = Guide;
14 |
15 | class GuideHtml extends React.Component {
16 | render() {
17 | const data = [
18 | { genre: 'Sports', sold: 275 },
19 | { genre: 'Strategy', sold: 115 },
20 | { genre: 'Action', sold: 120 },
21 | { genre: 'Shooter', sold: 350 },
22 | { genre: 'Other', sold: 150 },
23 | ];
24 |
25 | const scales = {
26 | sold: { alias: '销售量' },
27 | genre: { alias: '游戏种类' },
28 | };
29 |
30 | return (
31 |
32 |
33 |
34 |
35 |
36 | {
39 | console.log(yScale);
40 | return `最大值是${yScale.sold.max},
最小值是${yScale.sold.min}
`; // 位置信息
41 | }}
42 | />
43 |
44 |
45 | );
46 | }
47 | }
48 |
49 | ReactDOM.render(, mountNode)
50 |
51 | ```
52 |
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/Invalid Time: 20200229.md:
--------------------------------------------------------------------------------
1 | # Invalid Time: 20200229
2 |
3 | 
4 |
5 | ```js
6 | /**
7 | * 基础图表
8 | */
9 |
10 | import React from 'react';
11 | import ReactDOM from 'react-dom';
12 | import { Chart, Geom, Axis } from 'bizcharts@3.5.8';
13 | import moment from 'moment';
14 |
15 | const data = [
16 | {"date": '20200228', "value": "60"},
17 | {"date": '20200229', "value": "80"},
18 | {"date": '20200301', "value": "99"},
19 | {"date": '20200302', "value": "89"},
20 | {"date": '20200303', "value": "79"},
21 | {"date": '20200304', "value": "89"},
22 | {"date": '20200305', "value": "49"},
23 | {"date": '20200306', "value": "79"},
24 | {"date": '20200307', "value": "69"},
25 | ];
26 |
27 | const scale = {
28 | // date: {type: 'cat'},
29 | value: {
30 | type: "linear",
31 | formatter: val => {
32 | return val + "%";
33 | },
34 | tickCount: 5,
35 | ticks: ["0", "25", "50", "75", "100"],
36 | }
37 | };
38 |
39 | ReactDOM.render((
40 | {
41 | const date = moment(item.date).format('YYYY-MM-DD');
42 | return Object.assign({ date }, item);
43 | })} scale={scale}>
44 |
45 |
46 |
47 |
48 | ), mountNode);
49 |
50 | ```
51 |
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/voronoi图.md:
--------------------------------------------------------------------------------
1 | # voronoi图
2 |
3 | 
4 |
5 | ```js
6 | import $ from "jquery";
7 | import React from "react";
8 | import {
9 | G2,
10 | Chart,
11 | Geom,
12 | Axis,
13 | Tooltip,
14 | Coord,
15 | Label,
16 | Legend,
17 | View,
18 | Guide,
19 | Shape,
20 | Facet,
21 | Util
22 | } from "bizcharts@3.5.8";
23 | import DataSet from "@antv/data-set";
24 |
25 | let data;
26 | $.ajax({
27 | url: "https://alifd.alibabausercontent.com/materials/@bizcharts/relation-voronoi/0.2.8/mock.json",
28 | async : false,
29 | success: (iData) => { data = iData }
30 | });
31 |
32 | class Voronoi extends React.Component {
33 | render() {
34 | const { DataView } = DataSet;
35 | const ds = new DataSet();
36 | const dv = ds.createView().source(data);
37 | dv.transform({
38 | type: "diagram.voronoi",
39 | fields: ["x", "y"],
40 | size: [800, 600],
41 | as: ["_x", "_y"]
42 | });
43 | return (
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 | );
53 | }
54 | }
55 |
56 | ReactDOM.render(, mountNode)
57 |
58 | ```
59 |
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/区间柱状图.md:
--------------------------------------------------------------------------------
1 | # 区间柱状图
2 |
3 | 
4 |
5 | ```js
6 | import React from "react";
7 | import {
8 | G2,
9 | Chart,
10 | Geom,
11 | Axis,
12 | Tooltip,
13 | Coord,
14 | Label,
15 | Legend,
16 | View,
17 | Guide,
18 | Shape,
19 | Facet,
20 | Util
21 | } from "bizcharts@3.5.8";
22 |
23 | class Columnrange extends React.Component {
24 | render() {
25 | const data = [
26 | {
27 | x: "分类一",
28 | y: [76, 100]
29 | },
30 | {
31 | x: "分类二",
32 | y: [56, 108]
33 | },
34 | {
35 | x: "分类三",
36 | y: [38, 129]
37 | },
38 | {
39 | x: "分类四",
40 | y: [58, 155]
41 | },
42 | {
43 | x: "分类五",
44 | y: [45, 120]
45 | },
46 | {
47 | x: "分类六",
48 | y: [23, 99]
49 | },
50 | {
51 | x: "分类七",
52 | y: [18, 56]
53 | },
54 | {
55 | x: "分类八",
56 | y: [18, 34]
57 | }
58 | ];
59 | return (
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 | );
69 | }
70 | }
71 |
72 | ReactDOM.render(, mountNode)
73 |
74 | ```
75 |
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/圆头折线图.md:
--------------------------------------------------------------------------------
1 | # 圆头折线图
2 |
3 | 
4 |
5 | ```js
6 | // data-set 可以按需引入,除此之外不要引入别的包
7 | import React from 'react';
8 | import { Chart, Axis, Geom } from 'bizcharts@3.5.8';
9 |
10 | const data = [
11 | { year: '1991', value: 6 },
12 | { year: '1992', value: 8 },
13 | { year: '1993', value: 5.5 },
14 | { year: '1994', value: 7 },
15 | { year: '1995', value: 9.9 },
16 | { year: '1996', value: 6 },
17 | { year: '1997', value: 5 },
18 | { year: '1998', value: 10 },
19 | { year: '1999', value: 19 }
20 | ];
21 |
22 | class Demo extends React.Component {
23 | render() {
24 | return (
25 |
29 |
30 |
31 |
38 |
39 |
40 |
41 | );
42 | }
43 | }
44 |
45 | // CDN END
46 | ReactDOM.render(, mountNode)
47 |
48 | ```
49 |
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/多形状散点图.md:
--------------------------------------------------------------------------------
1 | # 多形状散点图
2 |
3 | 
4 |
5 | ```js
6 | import $ from "jquery";
7 | import React from 'react';
8 | import {
9 | Chart,
10 | Geom,
11 | Axis,
12 | Tooltip,
13 | Legend,
14 | } from 'bizcharts@3.5.8';
15 |
16 | let data;
17 | $.ajax({
18 | url: "https://alifd.alibabausercontent.com/materials/@bizcharts/point-scatter-shapes/0.1.3/mock.json",
19 | async : false,
20 | success: (iData) => { data = iData }
21 | });
22 |
23 | class Scatter extends React.Component {
24 | render() {
25 | return (
26 |
27 |
28 |
34 |
35 |
36 |
45 |
46 |
47 |
48 | );
49 | }
50 | }
51 |
52 | ReactDOM.render(, mountNode)
53 |
54 | ```
55 |
--------------------------------------------------------------------------------
/docs/BizCharts/Demo/雷达图复杂曲线.md:
--------------------------------------------------------------------------------
1 | # 雷达图复杂曲线
2 |
3 | 
4 |
5 | ```js
6 | import $ from "jquery";
7 | // data-set 可以按需引入,除此之外不要引入别的包
8 | import React from 'react';
9 | import { Chart, Axis, Tooltip, Geom, Coord } from 'bizcharts@3.5.8';
10 | let data;
11 | $.ajax({
12 | url: "https://alifd.alibabausercontent.com/materials/@bizcharts/radar-flower-line/0.1.2/mock.json",
13 | async : false,
14 | success: (iData) => { data = iData }
15 | });
16 |
17 | // 下面的代码会被作为 cdn script 注入 注释勿删
18 | // CDN START
19 | const scale = {
20 | x: {
21 | tickInterval: 30,
22 | },
23 | };
24 |
25 | class RadarFlowerLine extends React.Component {
26 | constructor() {
27 | super();
28 | this.state = {
29 | coordType: 'polar',
30 | };
31 | }
32 |
33 | componentDidMount() {
34 | setTimeout(() => {
35 | this.setState({
36 | coordType: 'rect',
37 | });
38 | }, 2000);
39 | }
40 |
41 | render() {
42 | return (
43 |
44 |
45 |
46 |
47 |
48 |
49 | );
50 | }
51 | }
52 |
53 | // CDN END
54 | ReactDOM.render(, mountNode)
55 |
56 | ```
57 |
--------------------------------------------------------------------------------
/docs/BizCharts/使用指南/data.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": 12,
3 | "name": "使用指南",
4 | "name_en": "docs",
5 | "product_id": 1,
6 | "parent_id": null,
7 | "rank": "1",
8 | "gmt_create": "2019-11-27T08:26:08.000Z",
9 | "gmt_modified": "2019-12-05T11:10:53.000Z",
10 | "is_deleted": 0,
11 | "is_avaliable": 1,
12 | "is_alinw": 0,
13 | "type": "normal",
14 | "externalPath": "/product/bizcharts/category/12/page/7",
15 | "creator_userid": null,
16 | "updator_userid": 1,
17 | "children": []
18 | }
--------------------------------------------------------------------------------
/docs/BizCharts/使用指南/主题.md:
--------------------------------------------------------------------------------
1 | # 主题
2 |
3 |
4 | >**引用: [G2 Theme](https://antv.alipay.com/zh-cn/g2/3.x/tutorial/theme.html)**
5 |
6 | ## 图表主题
7 | Bizcharts 提供了两种内建的主题: `default` and `dark`.
8 |
9 |
10 | ## 如何改变主题
11 |
12 | 你可以通过 `BizCharts.setTheme(themeName)` API 来改变主题。
13 |
14 | Exmaple:
15 |
16 | ```js
17 | BizCharts.setTheme('dark');
18 | ```
19 |
20 | ## 自定义主题
21 | 当调用 `BizCharts.setTheme()` API 传入的参数是一个对象时,这个时候代表使用你自定义的主题配置。
22 |
23 | Example:
24 | ```js
25 | const seaTheme = {
26 | animate:false,
27 | colors:{},
28 | shapes:{},
29 | };
30 | BizCharts.setTheme(seaTheme);
31 | ```
32 |
33 | 更多的自定义配置项, 请参考 [Theme API](../../7/page/41)
34 |
--------------------------------------------------------------------------------
/docs/BizCharts/使用指南/图表交互.md:
--------------------------------------------------------------------------------
1 | # 图表交互
2 |
3 | ## 默认交互
4 | 包括:
5 | - active 激活,鼠标hover。
6 | - select 选中,鼠标点击选择、框选。
7 |
8 | ## 激活
9 | 开启以及关闭 shape 对于鼠标 hover 时的响应效果,默认为各个 `` 内置了 active 效果 。可以通过 *active* 属性关闭及开启。
10 | 例如:
11 | ```js
12 |
13 |
14 | ```
15 |
16 | ## 选中
17 | 各个几何标记 geom 选中的模式包含如下三种:
18 | 1. 不可选中;
19 | 2. 单选;
20 | 3. 多选;
21 | 4. 选中是否可取消选中。
22 |
23 | 选中模式的设置方式如下:
24 |
25 | ```js
26 | ; // 关闭
27 | ; // 打开
28 | ;
34 | ```
35 |
36 | 默认情况下,G2 中只有饼图支持选中交互,其他 geom 的选中模式默认情况下都是关闭的。
37 |
38 | **图表交互控制可以跟[图表事件](../../7/page/24#图表事件)结合用来定制图表的自定义交互**
39 |
40 |
--------------------------------------------------------------------------------
/docs/BizCharts/使用指南/源数据的处理.md:
--------------------------------------------------------------------------------
1 | # 源数据的处理
2 |
3 | *文档转自G2*
4 |
5 | **BizCharts 支持两种格式的源数据**
6 | - JSON数组
7 | - DataView 对象
8 |
9 | ### JSON 数组
10 | Example:
11 |
12 | ```js
13 | var data = [
14 | {"gender":"男","count":40},
15 | {"gender":"女","count":30}
16 | ];
17 | ```
18 |
19 | ### DataView 对象
20 | * 单独使用 DataView
21 | * 如果仅仅是对数据进行加工,不需要图表联动
22 |
23 | * 通过状态量实现图表联动
24 | 在G2 3.0 中使用 DataSet 的状态量(State) 可以很容易的实现图表的联动,步骤如下:
25 | 1. 创建 DataSet 对象,指定状态量
26 | 2. 创建 DataView 对象,在 transform 中使用状态量
27 | 3. 创建图表,引用前面创建 DataView
28 | 4. 改变状态量,所有 DataView 更新
29 |
30 |
31 | 详见 [DataSet Package](../../7/page/37)。
32 |
--------------------------------------------------------------------------------
/docs/BizCharts/使用指南/答疑Issue复现教程.md:
--------------------------------------------------------------------------------
1 | # 答疑Issue复现教程
2 |
3 |
4 | ## 编辑复现demo
5 | - 打开官网相关图表demo,编辑代码以复现遇到的问题。
6 | - 样例代码:[https://bizcharts.net/gist/2eneuOO3zao](https://bizcharts.net/gist/2eneuOO3zao)
7 |
8 | ## 保存demo
9 | - https://bizcharts.net/product/BizCharts4/demo/305
10 | - 之后点击代码编辑器右上方的保存,在弹窗中输入问题描述,并点击确定保存。
11 |
12 |
13 |
14 | ## 分享链接到钉钉答疑群
15 | - demo保存之后页面会自动刷新,拷贝页面链接分享到答疑,并艾特相关同学进行答疑。
16 | - 
17 |
18 | ## 钉钉答疑群
19 | - 开源一群:钉钉群号21708548(已满)
20 | - 开源二群:钉钉群号30230048(可加新同学)
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/docs/BizCharts/实战/data.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": 59,
3 | "name": "实战",
4 | "name_en": "use",
5 | "product_id": 1,
6 | "parent_id": null,
7 | "rank": "4",
8 | "gmt_create": "2020-03-26T02:01:55.000Z",
9 | "gmt_modified": "2020-03-26T02:10:40.000Z",
10 | "is_deleted": 0,
11 | "is_avaliable": 1,
12 | "is_alinw": 0,
13 | "type": "normal",
14 | "externalPath": "/product/bizcharts/category/59/page/70",
15 | "creator_userid": 1,
16 | "updator_userid": 1,
17 | "children": []
18 | }
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Canvas.md:
--------------------------------------------------------------------------------
1 | # Canvas
2 |
3 |
4 |
5 | G组件的最外层必要组件,控制整个图表组件的渲染方式和画布容器大小。
6 |
7 | ## 使用方法
8 | 解构使用
9 | ```js
10 | import { GComponents } from 'bizcharts';
11 | const { Canvas, Ellipse, Rect } = GComponents;
12 | ...
13 |
16 | ```
17 | 也可按需使用
18 | ```js
19 | import Canvas from "bizcharts/g-components/Canvas";
20 | ...
21 |
24 | ```
25 |
26 |
27 | ## API
28 |
29 | ### renderer
30 | __
31 |
32 | 可选择当前使用的渲染引擎,根据选择绘制不同的渲染组件,可选值为 'canvas' | 'svg',默认选择canvas。
33 |
34 | ### width
35 | __
36 |
37 | 宽度
38 |
39 | ### height
40 | __
41 |
42 | 高度
43 |
44 | ### container
45 | __
46 |
47 | 画布容器,可以是容器 id 或者 DOM 元素
48 |
49 | ### cursor
50 | __
51 | 画布的 cursor 样式,其中 `Cursor` 为样式类型,可参考 [MDN 文档](https://developer.mozilla.org/en-US/docs/Web/CSS/cursor)。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Circle.md:
--------------------------------------------------------------------------------
1 | # Circle
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
13 | ```
14 |
15 | ### 通用属性
16 | [绘图属性](./169)
17 |
18 | ### x
19 | __
20 | 圆心坐标的 x 坐标。
21 |
22 | ### y
23 | __
24 | 圆心坐标的 y 坐标。
25 |
26 | ### r
27 | __
28 | 圆的半径。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Ellipse.md:
--------------------------------------------------------------------------------
1 | # Ellipse
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
22 | ```
23 |
24 | ### 通用属性
25 | [绘图属性](./169)
26 |
27 | ### x
28 | __
29 | 圆心坐标的 x 坐标。
30 |
31 | ### y
32 | __
33 | 圆心坐标的 y 坐标。
34 |
35 | ### rx
36 | __
37 | 椭圆的水平半径。
38 |
39 | ### ry
40 | __
41 | 椭圆的垂直半径。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Group.md:
--------------------------------------------------------------------------------
1 | # Group
2 |
3 |
4 |
5 | Group组件作为父组件,可把组件内的多个Shape图形组件作为一个整体来进行渲染绘制,优化性能。
6 |
7 | ## 使用方法
8 |
9 | ```js
10 |
22 | ```
23 |
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Image.md:
--------------------------------------------------------------------------------
1 | # Image
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
19 | ```
20 |
21 | ### 通用属性
22 | [绘图属性](./169)
23 |
24 | ### x
25 | __
26 | 起始点的 x 坐标。
27 |
28 | ### y
29 | __
30 | 起始点的 y 坐标。
31 |
32 | ### width
33 | __
34 | 图片宽度。
35 |
36 | ### height
37 | __
38 | 图片高度。
39 |
40 | ### img
41 | __
42 | 图片地址、图片对象或 canvas 对象。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Line.md:
--------------------------------------------------------------------------------
1 | # Line
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
20 | ```
21 |
22 | ### 通用属性
23 | [绘图属性](./169)
24 |
25 | ### x1
26 | __
27 | 起始点的 x 坐标。
28 |
29 | ### y1
30 | __
31 | 起始点的 y 坐标。
32 |
33 | ### x2
34 | __
35 | 结束点的 x 坐标。
36 |
37 | ### y2
38 | __
39 | 结束点的 y 坐标。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Marker.md:
--------------------------------------------------------------------------------
1 | # Marker
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
21 | ```
22 |
23 | ### 通用属性
24 | [绘图属性](./169)
25 |
26 | ### x
27 | __
28 | 中心点的 x 坐标。
29 |
30 | ### y
31 | __
32 | 中心点的 y 坐标。
33 |
34 | ### r
35 | __
36 | 中心点的半径。
37 |
38 | ### symbol
39 | __
40 |
41 | - 几何图形的类型,目前支持以下 5 种常见的几何图形:
42 | - `circle`: 圆形
43 | - `square`: 正方形
44 | - `diamond`: 菱形
45 | - `triangle`: 三角形
46 | - `triangle-down`: 倒三角形
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Path.md:
--------------------------------------------------------------------------------
1 | # Path
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
16 | ```
17 |
18 | ### 通用属性
19 | [绘图属性](./169)
20 |
21 | ### path
22 | __
23 |
24 | - 路径,支持 `字符串`和 `数组` 两种形式,详情可以参考 [SVG path](https://developer.mozilla.org/zh-CN/docs/Web/SVG/Tutorial/Paths)。
25 | - 字符串形式: `M 100,100 L 200,200`
26 | - 数组形式: `[ [ 'M', 100, 100 ], [ 'L', 200, 200 ] ]`
27 |
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Polygon.md:
--------------------------------------------------------------------------------
1 | # Polygon
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
20 | ```
21 | ### 通用属性
22 | [绘图属性](./169)
23 |
24 | ### points
25 | __
26 | 形如 [ [ x1, y1 ], [ x2, y2 ], ... ] 的点集合。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Polyline.md:
--------------------------------------------------------------------------------
1 | # Polyline
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
20 | ```
21 |
22 | ### 通用属性
23 | [绘图属性](./169)
24 |
25 | ### points
26 | __
27 | 形如 [ [ x1, y1 ], [ x2, y2 ], ... ] 的点集合。
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Rect.md:
--------------------------------------------------------------------------------
1 | # Rect
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
22 | ```
23 |
24 | ### 通用属性
25 | [绘图属性](./169)
26 |
27 | ### x
28 | __
29 | 起始点 x 坐标。
30 |
31 | ### y
32 | __
33 | 起始点 y 坐标。
34 |
35 | ### width
36 | __
37 | 宽度。
38 |
39 | ### height
40 | __
41 | 高度。
42 |
43 | ### radius
44 | __
45 | - 圆角,支持整数或数组形式, 分别对应左上、右上、右下、左下角的半径。支持的形式有:
46 | - `1`: 相当于 [ 1, 1, 1, 1 ]
47 | - `[ 1 ]`: 相当于 [ 1, 1, 1, 1 ]
48 | - `[ 1, 2 ]`: 相当于 [ 1, 2, 1, 2 ]
49 | - `[ 1, 2, 3 ]`: 相当于 [ 1, 2, 3, 2 ]
50 | - `[ 1, 2, 3, 4 ]`
--------------------------------------------------------------------------------
/docs/BizCharts@4.x/API文档/G组件/Text.md:
--------------------------------------------------------------------------------
1 | # Text
2 |
3 |
4 |
5 | ## 组件使用
6 | [两种使用方式](/product/BizCharts4/category/61/page/181#使用方式)
7 |
8 | ## attrs属性
9 |
10 | 使用方式
11 | ```js
12 |
21 | ```
22 |
23 | ### 通用属性
24 | [绘图属性](./169)
25 |
26 | ### x
27 | __
28 | 文字的位置坐标 x。
29 |
30 | ### y
31 | __
32 | 文字的位置坐标 y。
33 |
34 | ### text
35 | __
36 | 显示文字。
37 |
38 | ### fontStyle
39 | _