当前位置: 首页 > web >正文

如何使用 React 101 的 Highcharts 包装器

新的React 的 Highcharts 包装器现已推出,并且兼容React 16.4+。

在本教程中,我们将向您展示如何开始使用官方React 的 Highcharts 包装器。
我们将从设置环境开始,然后跳转到为每个 Highcharts 库创建三个演示:Highcharts、Highstock 和 Highmaps。

设置环境

对于这个项目,我们将使用:

  • 创建 React 应用

    工具只关注代码并获取 Webpack 和 Babel 的预配置。
  • Visual Studio 代码

    作为主要编辑器,享受其强大的功能,让编写代码变得更容易。
  • 扩展

    简单的 React 代码片段

    帮助编写快速的 React 代码。
  • 扩展

    Prettier

    更好地重新格式化代码。

安装

由于我们经常使用 Create React App 工具,因此我们倾向于全局安装它。为此,请打开终端并运行以下命令行,并使用选项-g对于全局:

$npm install-g create-react-app

创建我们的应用程序“hcreact”,在终端窗口输入:

$create-react-app hcreact

上面的命令行会创建一个包含默认项目的文件夹。

要安装 Visual Studio 代码和扩展,请随意参考官方文档。

安装 Visual Studio Code 后,打开它,将文件夹拖放到“hcreact”进入编辑器。

在开始更改项目之前,让我们按原样运行该项目,以确保一切都已设置好。

返回终端运行这些命令行:

$ cd hcreact/$ npm start

npm start 将在端口 3000 上启动服务器。

如果您的结果如下图所示,则表示基本配置正在正常工作。

图片

接下来安装 Highcharts 和 Highcharts React Wrapper。

首先,使用以下命令在终端上停止正在运行的项目Ctrl+c,然后运行此命令行:

$ npm install highcharts$ npm install highcharts-react-official

现在,让我们通过删除默认文件来准备我们的项目。返回编辑器然后删除以下文件:

  • 应用程序.css
  • App.js
  • 应用程序.测试.js
  • index.js
  • 索引.css
  • 徽标.svg
  • serviceWorker.js
  • .gitignore

图片

解决了这个问题,我们就可以开始编写自己的代码了。

HIGHCHARTS 图表

在 src 文件夹中,创建 index.js,打开并导入reactreact-domhighcharts, 和highcharts-react-official

import React from 'react';
import { render } from 'react-dom';
import Highcharts from 'highcharts';
import HighchartsReact from 'highcharts-react-official';

首先要生成的简单图表是具有以下内容的样条图data:[1,2,1,4,3,6]为了实现这一点,我们需要创建一个对象(选项),然后传递信息:

const options = {chart: {type: 'spline'},title: {text: 'My chart'},series: [{data: [1, 2, 1, 4, 3, 6]}]
};

JSX 包含上面创建的信息,具体操作方法如下:

const App = () => (<div><HighchartsReact highcharts={Highcharts} options={options} /></div>
);

最后使用react render方法渲染整个代码:

render(<App />, document.getElementById('root'));

所需代码现已完成。返回终端并运行项目:

$ npm start

结果应该是一个交互式样条图:

(浏览器演示地址 https://zn1j00v1wx.csb.app/)

图片

HIGHSTOCK 图表

使用 Highstock 库生成的图表也适用相同的过程。

以下是一个简单的交互式股票图表的示例:

import React from 'react';
import { render } from 'react-dom';
import Highcharts from 'highcharts/highstock';
import HighchartsReact from 'highcharts-react-official';const options = {title: {text: 'My stock chart'},series: [{data: [1, 2, 1, 4, 3, 6, 7, 3, 8, 6, 9]}]
};const App = () => (<div><HighchartsReacthighcharts={Highcharts}constructorType={'stockChart'}options={options}/></div>
);render(<App />, document.getElementById('root'));

注意使用此导入来导入 HighstockimportHighchartsfrom'highcharts/highstock';,并使用constructorType={'stockChart'}在里面JSX。

结果如下的演示:

(浏览器演示地址  https://jzjzr57jw.csb.app/)

图片

Highmaps图

使用 Highmaps 渲染地图的过程与之前的演示几乎类似,除了几点:

  1. 我们必须导入要显示的地图数据并将其保存为mapDataAsia.js,就我而言

    亚洲的 JavaScript 地图

    来自Highcharts 地图集合

  2. 替换对象Highcharts.maps["custom/asia"] 经过 

    constmapDataAsia 

  3. 导出对象 exportdefaultmapDataAsia;
  4. 在我的 index.js

    使用 importmapDataAsiafrom'./mapDataAsia.js';

图片

瞧,我们已经准备好使用地图并显示它了。

index.js 将如下所示:

import React from 'react';
import { render } from 'react-dom';
import Highcharts from 'highcharts';
import HighchartsReact from 'highcharts-react-official';
import mapDataAsia from './mapDataAsia';// Load Highcharts modules
require('highcharts/modules/map')(Highcharts);var data = [['ae', 37],['af', 44],['am', 20],['az', 19],['bd', 9],['bh', 12],['bn', 43],['bt', 26],['cn', 70],['cnm', 33],['cy', 48],['ge', 27],['id', 65],['il', 29],['in', 65],['iq', 36],['ir', 70],['jk', 40],['jo', 31],['jp', 100],['kg', 52],['kh', 25],['kp', 45],['kr', 70],['kw', 35],['kz', 28],['la', 38],['lb', 46],['lk', 51],['mm', 13],['mn', 34],['my', 18],['nc', 47],['np', 50],['om', 5],['ph', 1],['pk', 39],['qa', 41],['ru', 70],['sa', 2],['sg', 65],['sh', 17],['sp', 10],['sy', 30],['th', 4],['tj', 22],['tl', 24],['tm', 32],['tr', 65],['tw', 49],['uz', 23],['vn', 21],['ye', 6]
];const mapOptions = {title: {text: ''},colorAxis: {min: 0,stops: [[0.4, '#ffff00'], [0.65, '#bfff00'], [1, '	#40ff00']]},series: [{mapData: mapDataAsia,name: 'Asia',data: data}]
};// Render app with demo chart
class App extends React.Component {render() {return (<div><h1>Demos</h1><h2>Highmaps</h2><HighchartsReactoptions={mapOptions}constructorType={'mapChart'}highcharts={Highcharts}/></div>);}
}
render(<App />, document.getElementById('root'));

最终结果是下面的演示:

(浏览器演示地址 https://v318454060.csb.app/ )

图片

现在,您知道如何使用 Highcharts React 包装器来使用三个主要 Highcharts 库创建和显示图表

http://www.xdnf.cn/news/18276.html

相关文章:

  • Pomian语言处理器 研发笔记(一):使用C++的正则表达式构建词法分析器
  • 视频讲解:CatBoost、梯度提升 (XGBoost、LightGBM)对心理健康数据、交通流量及股票价格预测研究
  • 从数据汇总到高级分析,SQL 查询进阶实战(下篇)—— 分组、子查询与窗口函数全攻略
  • 8.18 表达式树|浮点数绝对值
  • 基于Flink CDC实现联系人与标签数据实时同步至ES的实践
  • Ps 2025 图像编辑 Photoshop(Mac中文)
  • 【避坑指南】初始化与更新共享数据赋值的一致性问题
  • 【数模国奖冲刺】备赛过程中的常见问题
  • Linux 服务:RAID 级别解析与 mdadm 工具实操指南
  • SWMM排水管网水力、水质建模及在海绵与水环境中的应用技术-模拟降雨和污染物质经过地面、排水管网、蓄水和处理
  • 计算机大数据毕业设计推荐:基于Hadoop+Spark的食物口味差异分析可视化系统【源码+文档+调试】
  • 第一阶段C#基础-13:索引器,接口,泛型
  • 【网络安全实验报告】实验六: 病毒防护实验
  • 【PZ-ZU47DR-KFB】璞致FPGA ZYNQ UltraScalePlus RFSOC QSPI Flash 固化常见问题说明
  • 【P38 6】OpenCV Python——图片的运算(算术运算、逻辑运算)加法add、subtract减法、乘法multiply、除法divide
  • 如何在服务器 clone github 项目
  • 【Linux开发】错误更改bash.sh导致PATH环境变量被破坏所有命令不可用的解决方法
  • 【菜狗学聚类】时序数据聚类算法和相关论文
  • 算法-每日一题(DAY13)两数之和
  • Centos7使用lamp架构部署wordpress
  • CentOS 7 LAMP快速部署WordPress指南
  • 20. 云计算-Service MeshServerless
  • 时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读
  • 基于51单片机WIFI心率计脉搏体温测量仪APP设计
  • 加密资产投资的六种策略:稳定币合规后的 Web3 投资和 RWA
  • RabbitMQ ,消息进入死信交换机
  • React diff Vue diff介绍
  • 嵌入式学习硬件I.MX6ULL(五)按键 中断 GIC OCP原则
  • 云原生:重塑软件世界的技术浪潮与编程语言选择
  • 【每天学点‘音视频’】前向纠错 和 漏包重传