npm 包 c3-react 使用教程

简介

c3-react 是一个基于 c3.js 开发的 React 组件库,能够帮助前端开发人员快速地集成各种图表组件。通过使用 c3-react,用户可以快速地创建可交互的、自适应的图表。

安装

使用 npm 进行安装:

--- ------- -------- ------

快速入门

引入

------ ----- ---- --------
------ -------- ---- ------------
------ ------- ---- -----------

配置数据

----- ---- - -
  -------- -
    --------- --- ---- ---- ---- ---- -----
    --------- --- --- --- --- --- ----
  --
--

渲染图表

----------------
  -------- ----------- ---
  -------------------------------
--

以上示例演示了如何在 React 应用中使用 c3-react 库,在 <C3Chart> 组件中传递数据,并且渲染出一个基本的图表。

API

属性

以下是 <C3Chart> 组件支持的属性列表。

属性 类型 默认值 说明
data object 数据配置对象,包括列、行数据
axis object {} 坐标轴配置对象,可以配置 x 轴、y 轴、y2 轴的多项属性,详见下面的配置说明
grid object {} 网格线配置对象,可以配置 x 轴、y 轴对应的水平、垂直网格线的样式
legend object {} 图例配置对象,可以配置位置、布局等多项属性
tooltip object {} 提示框配置对象,可以配置展示位置、自定义展示内容等多项属性
zoom object {} 缩放配置对象,可以配置缩放范围、缩放类型等多项属性
subchart object {} 副图形配置对象
size object {} 图形尺寸配置对象,可以配置宽度、高度等多项属性
padding object {} 内边距配置对象,可以配置图形周围的内边距
color object {} 颜色配置对象,可以配置默认颜色、图例颜色等,也可以使用回调函数动态返回颜色
transition object {} 过渡配置对象,可以配置过渡时间、动画类型等
onrendered func 图形渲染完成后的回调函数
onresized func 图形尺寸改变后的回调函数
onmouseover func 鼠标移入图形元素时的回调函数
onmouseout func 鼠标移出图形元素时的回调函数
onresize func 尺寸改变时的回调函数
onrescale func 缩放变化时的回调函数
oninit func 图形初始化完成后的回调函数
dataFormat string json 数据格式,默认为 json
unloadBeforeLoad bool false 图表在加载前是否清空。默认为 false 。设置为 true 时,将在加载数据前清空图表并显示 loading icon ,在加载完成后再渲染图表。如需在切换数据时保持数据加载前的状态可使用此配置。

坐标轴配置

以下是坐标轴配置对象支持的属性列表。

x 轴属性

属性 类型 默认值 说明
type string "indexed" x 轴的类型,可选值为: "indexed", "timeseries", 和 "category"
categories array [] x 轴的分类数据
tick object or function {} x 轴的标签配置对象或标签生成函数,详见下面的配置说明
label string x 轴的标签文本

y 轴属性

属性 类型 默认值 说明
show bool false 是否显示
min number y 轴最小值
max number y 轴最大值
default array of objects or array y 轴的默认值,若使用此项则需与 columns 参数配合使用,详见下面的使用说明
label string y 轴的标签文本
position string left y 温度轴的位置,可选值为: "left", "right", 和 "y2"
inverted bool false 是否将 y 温度轴反转
center number or object 用于分散数据在y轴上。 可以传入数字、图表宽度的百分比(字符串)或包含百分比的对象{value: 50, position: 'middle'}
tick object or function {} y 轴的标签配置对象或标签生成函数,详见下面的配置说明
padding object {} y 轴的边缘偏移量,可用于调整标签与边缘的距离
outerPadding number y 轴外边距

y2 轴属性

属性 类型 默认值 说明
show bool false 是否显示
min number y2 轴最小值
max number y2 轴最大值
default array of objects or array y 轴的默认值,若使用此项则需与 columns 参数配合使用,详见下面的使用说明
label string y2 轴的标签文本
position string right y 温度轴的位置,可选值为: "left", "right", 和 "y2"
inverted bool false 是否将 y 温度轴反转
center number or object 用于分散数据在y轴上。 可以传入数字、图表宽度的百分比(字符串)或包含百分比的对象{value: 50, position: 'middle'}
tick object or function {} y2 轴的标签配置对象或标签生成函数,详见下面的配置说明
padding object {} y2 轴的边缘偏移量,可用于调整标签与边缘的距离
outerPadding number y 轴外边距

坐标轴的标签配置

属性 类型 默认值 说明
show bool true 是否显示坐标轴上的标签
format func 数值格式化函数,用于返回格式化后的标签文本
count number 坐标轴上显示的标签数量
culling bool or object 是否启用数据截断,若启用则可配置数据截断数量
multiline bool false 是否允许标签文本多行展示
rotate number 0 标签文本旋转角度
outer bool true 是否显示坐标轴最外侧的标签
centered bool false 是否将标签文本置于中心位置
position object 坐标轴标签文本的位置,包括 x、y 两个方向的坐标值,可用来调整标签显示位置,例如: { x: 0, y: 10 } 表示在 x 轴,距离起点 0 处的标签位置向下偏移 10 个单位

网格线配置

属性 类型 默认值 说明
x object {} x 轴网格线配置对象,详见下面的配置说明
y object {} y 轴网格线配置对象,详见下面的配置说明

x/y 轴网格线配置

属性 类型 默认值 说明
show bool false 是否显示网格线
lines array [] 网格线的位置信息

图例配置

属性 类型 默认值 说明
show bool true 是否显示图例
position string bottom 图例位置,可选值为: "right”, “bottom”, “inset”和“none”
inset object {} 插入图例的大小和相对位置,适用于 position: "inset"
item object {} 图例项的样式和布局,详见下面的配置说明
padding object {} 图例周围的内边距
maxItemWidth number 图例项的最大宽度

图例项配置

属性 类型 默认值 说明
width number 图例项宽度
height number 图例项高度
tile bool false 是否显示方块填充
padding number 图例项周围的内边距
radius number 图例项圆角半径
textColor object {} 图例项文本颜色
onClick func 点击图例项后触发回调函数
onMouseover func 鼠标移入图例项时触发回调函数
onMouseout func 鼠标移出图例项时触发回调函数

提示框配置

属性 类型 默认值 说明
show bool true 是否显示提示框
grouped bool false 是否分组显示提示框内容
format object or function 用于格式化提示框内容的配置对象或函数,详见下面的配置说明
contents object or function 自定义提示框渲染内容的配置对象或函数,详见下面的配置说明
position object 提示框位置的配置对象,包括 x、y 坐标值,可用于自定义位置
backgroundColor string null 提示框的背景颜色
border object 提示框的边框样式配置对象,包括颜色、宽度等
contents function 提示框展示阈值的自定义配置函数,传入参数为返回值函数

格式化提示框格式

属性 类型 默认值 说明
title string 提示框的标题文本
value string or number 提示框的数值文本
name string 提示框的名称或分类文本,通常用于饼图等展示不同类别数据的图形
position object 提示框的位置,包括 x、y 两个属性,可用于调整位置
colors object 提示框的颜色配置对象,包括背景色和字体颜色

自定义提示框渲染内容

可以通过一个函数来自定义提示框的内容:

----- -------- - --- ------------------- ------------------- ------ -- -
  ----- ----------- - -------------------
  ----- ----------- - -------------------
  ----- ------- - ----- --------------------------- --------------------------------------------------- ---------------------------------------------------------------------
  ------ --------
-

这样就可以使用自定义的 HTML 片段来自定义提示框的渲染内容了。

缩放配置

属性 类型 默认值 说明
enabled bool false 是否启用缩放组件
type string "scroll" 缩放类型,可选值为: "scroll" 和 "drag"
rescaleY bool false 是否在 x 轴缩放时同时缩放 y 轴
extent array 缩放的范围,数组中分别为最小值和最大值的百分比,例如: [0.2, 0.8] 表示缩放范围从 20% 到 80%
onzoomstart func 缩放开始时的回调函数
onzoom func 缩放期间的回调函数
onzoomend func 缩放结束后的回调函数

副图形配置

属性 类型 默认值 说明
show bool false 是否启用副图形
sizeOnly bool false 是否只缩放图形大小,不缩放 x 轴
xAxis object {} 副图形对应的 x 轴配置对象,详见下面的配置说明
yAxis object {} 副图形对应的 y 轴配置对象,详见下面的配置说明
brush object {} 刷选框的样式和事件配置对象,详见下面的配置说明
onbrushstart func 刷选开始时的回调函数
onbrush func 刷选期间的回调函数
onbrushend func 刷选结束后的回调函数

副图形

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066c90ccdc64669dde584a


猜你喜欢

  • npm 包 caesar 使用教程

    在前端开发中,加密和解密是一项非常重要的技能。caesar 这个 npm 包正是为这个需求设计的。本文将详细介绍 caesar 的使用方法,让你轻松掌握加密和解密技能。

    4 年前
  • npm 包 caesar-cipher-amine 使用教程 #

    随着 Web 技术的快速发展,前端开发变得越来越重要。对于前端开发者来说,学习并掌握各种技术和工具是非常必要的。其中, npm 包是开发中不可或缺的一部分。在本篇文章中,我们将介绍一个非常实用的 np...

    4 年前
  • npm 包 caesar-cipher-mehdi 使用教程

    在前端开发中,数据传输是一个重要的问题。我们经常需要对敏感数据进行加密,以保护数据的安全。在这个过程中,使用加密算法可以大大提高数据传输的安全性。 本文将介绍一个 npm 包,它提供了 Caesar ...

    4 年前
  • NPM 包 caesar-ciphers 使用教程

    简介 caesar-ciphers 是一款基于 JavaScript 实现的凯撒密码加密解密工具。这个 NPM 包提供了方便的 API,用于对字符串进行加解密操作。

    4 年前
  • npm 包 caesar-mobile 使用教程

    简介 caesar-mobile 是一个基于 React Native 开发的移动可访问性解决方案,旨在提供一系列易于集成、简单易用、功能强大的组件和工具,以便打造更加友好易用的移动应用程序。

    4 年前
  • npm 包 caesar-parser 使用教程

    简介 在前端开发中,我们经常需要对字符串进行加密或解密操作。caesar-parser 就是一个基于 JavaScript 实现的字符串加密解密工具库,使用非常简单,并且支持多种加密方式。

    4 年前
  • npm 包 calendario 使用教程

    在现代Web开发中,前端框架和类库的使用越来越重要。NPM(Node.js的包管理器)是一个强大的工具,它允许开发者通过安装 npm 包来轻松地使用现有的代码块,以提高开发效率。

    4 年前
  • npm 包 calendarium 使用教程

    前言 在前端开发中,我们经常需要使用日历组件来展示时间信息。市面上已经有很多成熟的日历插件,但是它们与项目的样式风格可能不符合,修改起来比较麻烦。这时,我们可以考虑使用 npm 包来自定义日历组件,本...

    4 年前
  • npm 包 calendarmc 使用教程

    前言 在前端开发中,我们经常需要使用日历控件完成日期的选择、日历的展示等功能。而这时,npm 包 calendarmc 就能帮助我们快速搭建出一个可交互的日历界面。

    4 年前
  • npm 包 calender 使用教程

    随着前端技术的发展,很多前端工具和插件被开发出来,使得前端开发更加高效、便捷。其中,日历组件是前端开发过程中经常会用到的一个组件。calender 是一个轻量级的、易于定制的日历组件,它可以帮助我们快...

    4 年前
  • npm 包 Calendr 使用教程

    Calendr 是一个基于 Node.js 的 npm 包,它提供了生成、渲染和管理数字日历的功能。在前端开发中,数字日历的需求很常见,如活动日历、个人日程表等,Calendr 可以方便地帮助我们实现...

    4 年前
  • npm包calendator使用教程

    介绍 Calendator是一个轻便易用的日历插件,可用于Web应用程序的UI设计。它是一个快速响应和自定义化的插件,而且易于集成和使用。 本文将介绍如何在前端项目中使用calendator。

    4 年前
  • npm 包 caeser 使用教程

    什么是 caeser? Caeser 是一个基于 JavaScript 实现的凯撒密码加密、解密工具。通过这个简单易用的 npm 包,我们可以将我们的信息进行简单地加密,以保护这些信息的安全性。

    4 年前
  • npm 包 caesium-coffee 使用教程

    简介 在前端开发中,我们经常需要对图片进行压缩以节省流量和加速图片的加载。其中,CaesiumJS 是一款功能强大的图片压缩工具。而 caesium-coffee 是 CaesiumJS 的 Node...

    4 年前
  • npm 包 Caesium 使用教程

    前言 在前端开发中,我们经常会需要对图片进行压缩以达到优化网站速度的目的。而 Caesium 就是一款基于 Node.js 的图片压缩工具,它可以很方便地将图片进行压缩处理,并且支持批量处理。

    4 年前
  • npm 包 caesium-less 使用教程

    什么是 caesium-less? caesium-less 是一个可以帮助我们快速编写样式的 npm 包。借助 caesium-less,我们可以快速编写带有变量、函数、mixin 等特性的 les...

    4 年前
  • npm 包 caf-adbkit 使用教程

    在前端开发中,使用 npm 包已经成为了日常开发中必不可少的一部分。其中,caf-adbkit 是一个非常实用的 npm 包,它可以帮助我们在调试 Android 应用时与设备进行通信和交互。

    4 年前
  • npm 包 cPlayer 使用教程

    概述 cPlayer 是一个轻量级的基于原生 JavaScript 的 HTML5 音乐播放器插件,提供了音乐播放、进度控制、音量调节等功能。借助于 npm 包管理器,您可以方便地将其整合到您的前端项...

    4 年前
  • npm 包 ca-buildmodule 使用教程

    前言 在前端开发过程中,我们经常会引入各种 npm 包来辅助我们提高开发效率以及解决各种问题。而本篇文章着重介绍一个叫做 ca-buildmodule 的 npm 包,它可以帮助我们快速构建一个现代化...

    4 年前
  • npm 包 camunda-grunt-bower-release 使用教程

    前言 camunda-grunt-bower-release 是一个基于 Grunt 和 Bower 的 npm 包,旨在简化前端开发者的发布和部署过程。它能自动化生成版本号,打标签,上传到 Git ...

    4 年前

相关推荐

    暂无文章