当前位置:首页 > React

react项目如何使用echarts

2026-03-11 07:54:15React

安装 ECharts 依赖

在 React 项目中安装 ECharts 核心库和 React 封装库:

npm install echarts echarts-for-react

基础使用示例

创建一个简单的折线图组件:

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;

按需引入模块

减少打包体积,只引入需要的图表类型:

react项目如何使用echarts

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 ResponsiveChart = () => {
  const chartRef = useRef(null);

  useEffect(() => {
    const handleResize = () => {
      chartRef.current?.getEchartsInstance().resize();
    };
    window.addEventListener('resize', handleResize);
    return () => window.removeEventListener('resize', handleResize);
  }, []);

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

主题配置

使用自定义主题或官方主题:

react项目如何使用echarts

import { ThemeRiverChart } from 'echarts/charts';
import 'echarts/theme/dark';

// 使用主题
<ReactECharts 
  option={option} 
  theme="dark"
  style={{ height: 400 }}
/>

事件处理

添加图表交互事件:

const onEvents = {
  click: (params) => {
    console.log('点击事件参数:', params);
  },
  legendselectchanged: (params) => {
    console.log('图例选择变化:', params);
  }
};

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

动态更新数据

通过 useEffect 实现数据更新:

const DynamicChart = ({ data }) => {
  const [option, setOption] = useState(baseOption);

  useEffect(() => {
    setOption(prev => ({
      ...prev,
      series: [{ ...prev.series[0], data }]
    }));
  }, [data]);

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

服务端渲染支持

配置 SSR 兼容模式:

import ReactECharts from 'echarts-for-react/lib/core';

<ReactECharts
  option={option}
  ssr={true}
  style={{ width: '100%', height: '100%' }}
/>

分享给朋友:

相关文章

vue 实现的项目

vue 实现的项目

Vue 实现的项目类型 Vue.js 是一个渐进式 JavaScript 框架,适用于构建各种规模的项目。以下是一些常见的 Vue 实现项目类型: 单页应用 (SPA) Vue 非常适合构建单页应用…

uniapp前端项目

uniapp前端项目

Uniapp 前端项目开发指南 Uniapp 是一个基于 Vue.js 的跨平台开发框架,支持一次开发,多端发布(如微信小程序、H5、App 等)。以下是关于 Uniapp 前端项目的关键信息: 环…

vue项目实现流程

vue项目实现流程

Vue项目实现流程 项目初始化 使用Vue CLI或Vite创建项目基础结构。Vue CLI适合传统项目,Vite适合现代轻量级应用。安装Node.js环境后,通过命令行工具执行创建命令。 npm…

如何运行react项目

如何运行react项目

运行React项目的步骤 确保已安装Node.js(建议版本12或更高)和npm/yarn。若未安装,可从Node.js官网下载。 全局安装create-react-app脚手架工具(若已安装可跳过…

react如何使用swiper

react如何使用swiper

安装 Swiper 依赖 在 React 项目中使用 Swiper 前,需要安装 Swiper 的核心库和 React 组件库。通过 npm 或 yarn 安装以下依赖: npm install s…

vue的项目实现

vue的项目实现

Vue 项目实现步骤 初始化项目 使用 Vue CLI 或 Vite 创建新项目: npm create vue@latest # Vue CLI npm create vite@latest…