当前位置:首页 > 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%' }}
/>

分享给朋友:

相关文章

uniapp项目简历

uniapp项目简历

uniapp项目简历的构建方法 项目经验展示 在简历中单独列出uniapp开发经验,描述项目名称、开发周期、技术栈(如Vue.js、uni-ui等)。突出跨平台特性(iOS/Android/Web多端…

如何运行java项目

如何运行java项目

运行Java项目的步骤 确保Java环境已安装 在运行Java项目前,需确认系统已安装Java Development Kit(JDK)。通过命令行输入java -version和javac -ver…

vue 项目实现websocket

vue 项目实现websocket

安装依赖 在Vue项目中,使用WebSocket通常不需要额外安装依赖,因为浏览器原生支持WebSocket API。如果需要更高级的功能或封装,可以安装vue-native-websocket或so…

vue实现音乐项目

vue实现音乐项目

Vue实现音乐项目的基本步骤 使用Vue实现音乐项目通常涉及前端界面开发、音频播放控制、API数据交互等核心功能。以下是关键实现方法: 项目初始化与基础配置 创建Vue项目并安装必要依赖: vue…

vue项目实现录音

vue项目实现录音

实现录音功能的基本思路 在Vue项目中实现录音功能通常需要借助浏览器提供的Web Audio API或第三方库。核心步骤包括获取麦克风权限、创建录音对象、处理音频数据以及保存录音文件。 使用Web…

vue实现java项目

vue实现java项目

Vue 与 Java 项目集成方案 Vue 作为前端框架,与 Java 后端项目集成通常采用前后端分离架构。以下是具体实现方式: 前端项目搭建 使用 Vue CLI 或 Vite 创建独立前端工程:…