当前位置:首页 > React

react如何引入echarts

2026-03-30 18:39:33React

安装依赖

在项目中安装 echartsecharts-for-react 库。echarts-for-react 是一个封装好的 React 组件,方便在 React 中使用 ECharts。

npm install echarts echarts-for-react

引入基本图表

创建一个 React 组件并引入 ECharts 图表。以下是一个简单的折线图示例:

import React from 'react';
import ReactECharts from 'echarts-for-react';

const LineChart = () => {
  const option = {
    xAxis: {
      type: 'category',
      data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
      type: 'value'
    },
    series: [
      {
        data: [820, 932, 901, 934, 1290, 1330, 1320],
        type: 'line'
      }
    ]
  };

  return <ReactECharts option={option} />;
};

export default LineChart;

按需引入模块

如果项目对体积敏感,可以按需引入 ECharts 模块以减少打包体积:

import React from 'react';
import ReactECharts from 'echarts-for-react';
import * as echarts from 'echarts/core';
import { LineChart } from 'echarts/charts';
import {
  TitleComponent,
  TooltipComponent,
  GridComponent
} from 'echarts/components';
import { CanvasRenderer } from 'echarts/renderers';

// 注册必要的组件
echarts.use([
  LineChart,
  TitleComponent,
  TooltipComponent,
  GridComponent,
  CanvasRenderer
]);

const CustomChart = () => {
  const option = {
    title: {
      text: '按需引入示例'
    },
    tooltip: {},
    xAxis: {
      data: ['A', 'B', 'C', 'D', 'E']
    },
    yAxis: {},
    series: [
      {
        name: '数据',
        type: 'line',
        data: [5, 20, 36, 10, 10]
      }
    ]
  };

  return <ReactECharts echarts={echarts} option={option} />;
};

export default CustomChart;

动态更新数据

通过 React 的状态管理动态更新图表数据:

import React, { useState, useEffect } from 'react';
import ReactECharts from 'echarts-for-react';

const DynamicChart = () => {
  const [data, setData] = useState([10, 20, 30, 40, 50]);

  useEffect(() => {
    const interval = setInterval(() => {
      setData(prevData =>
        prevData.map(value => value + Math.floor(Math.random() * 10) - 5)
      );
    }, 1000);
    return () => clearInterval(interval);
  }, []);

  const option = {
    xAxis: {
      type: 'category',
      data: ['A', 'B', 'C', 'D', 'E']
    },
    yAxis: {
      type: 'value'
    },
    series: [
      {
        data,
        type: 'bar'
      }
    ]
  };

  return <ReactECharts option={option} />;
};

export default DynamicChart;

主题配置

可以使用 ECharts 的主题功能自定义图表样式:

import React from 'react';
import ReactECharts from 'echarts-for-react';
import { dark } from 'echarts/themes';

const ThemedChart = () => {
  const option = {
    title: {
      text: '深色主题示例'
    },
    xAxis: {
      type: 'category',
      data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
      type: 'value'
    },
    series: [
      {
        data: [120, 200, 150, 80, 70, 110, 130],
        type: 'bar'
      }
    ]
  };

  return <ReactECharts option={option} theme={dark} />;
};

export default ThemedChart;

事件处理

为图表添加事件处理函数:

react如何引入echarts

import React from 'react';
import ReactECharts from 'echarts-for-react';

const EventChart = () => {
  const onChartClick = params => {
    console.log('图表点击事件', params);
  };

  const onEvents = {
    click: onChartClick
  };

  const option = {
    xAxis: {
      type: 'category',
      data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
      type: 'value'
    },
    series: [
      {
        data: [120, 200, 150, 80, 70, 110, 130],
        type: 'bar'
      }
    ]
  };

  return <ReactECharts option={option} onEvents={onEvents} />;
};

export default EventChart;

标签: reactecharts
分享给朋友:

相关文章

react 如何引入jquery

react 如何引入jquery

引入 jQuery 到 React 项目 在 React 项目中引入 jQuery 可以通过多种方式实现,但需要注意 React 和 jQuery 操作 DOM 的方式可能冲突,因此建议仅在必要时使用…

如何手写一个react

如何手写一个react

手写一个简单的 React 创建一个基础的 React 实现需要理解其核心概念:虚拟 DOM、组件、状态管理和渲染。以下是一个简化版的 React 实现。 创建虚拟 DOM 虚拟 DOM 是真实 D…

react native如何

react native如何

React Native 基础知识 React Native 是一个由 Facebook 开发的框架,用于使用 JavaScript 和 React 构建跨平台移动应用。它允许开发者编写一次代码,同时…

如何监控react性能

如何监控react性能

使用 React Profiler API React 16.5 及以上版本内置了 Profiler API,可直接测量组件渲染时间。通过 <React.Profiler> 包裹目标组件,…

如何读react源码

如何读react源码

理解React源码的结构 React源码托管在GitHub上,主要分为几个核心模块:react、react-dom、react-reconciler等。react包包含核心API和组件逻辑,react…

react如何创建框架

react如何创建框架

React 创建框架的方法 React 本身是一个用于构建用户界面的 JavaScript 库,但可以通过多种方式创建框架或项目结构。以下是几种常见的方法: 使用 Create React App…