react recharts饼图 及配置项

  • <Pie>:指定饼图的数据和样式。

    • data:设置图表使用的数据数组。
    • dataKey:指定用于饼图切片面积计算的数据字段。
    • nameKey:指定用于显示在图例和提示框中的数据字段。
    • cxcy:设置饼图中心的位置。
    • outerRadius:设置饼图的外半径。
    • fill:设置饼图的颜色。
    • label:设置是否显示切片标签。
  • <Cell>:为每个切片设置自定义颜色。可以根据需要为每个数据项选择不同的颜色。

  • <Legend>:设置图例的样式和位置。

  • <Tooltip>:设置鼠标悬停时显示的提示框。

复制代码
import React from 'react';
import { PieChart, Pie, Cell, Legend, Tooltip } from 'recharts';

const data = [
  { name: 'A', value: 400 },
  { name: 'B', value: 300 },
  { name: 'C', value: 200 },
  { name: 'D', value: 100 },
];

const colors = ['#0088FE', '#00C49F', '#FFBB28', '#FF8042'];

const PieChartComponent = () => {
  return (
    <PieChart width={400} height={400}>
      <Pie
        data={data}
        dataKey="value"
        nameKey="name"
        cx="50%"
        cy="50%"
        outerRadius={80}
        fill="#8884d8"
        label
      >
        {data.map((entry, index) => (
          <Cell key={`cell-${index}`} fill={colors[index % colors.length]} />
        ))}
      </Pie>
      <Legend verticalAlign="bottom" height={36} />
      <Tooltip />
    </PieChart>
  );
};

export default PieChartComponent;
相关推荐
weibkreuz1 小时前
收集表单数据@10
开发语言·前端·javascript
hboot2 小时前
别再被 TS 类型冲突折磨了!一文搞懂类型合并规则
前端·typescript
在西安放羊的牛油果2 小时前
浅谈 import.meta.env 和 process.env 的区别
前端·vue.js·node.js
鹏北海2 小时前
从弹窗变胖到 npm 依赖管理:一次完整的问题排查记录
前端·npm·node.js
布列瑟农的星空2 小时前
js中的using声明
前端
薛定谔的猫22 小时前
Cursor 系列(2):使用心得
前端·ai编程·cursor
用户904706683572 小时前
后端问前端:我的接口请求花了多少秒?为啥那么慢,是你慢还是我慢?
前端
深念Y2 小时前
仿B站项目 前端 4 首页 顶层导航栏
前端·vue·ai编程·导航栏·bilibili·ai开发
dragonZhang2 小时前
基于 Agent Skills 的 UI 重构实践:从 Demo 到主题化界面的升级之路
前端·ai编程·claude
王林不想说话2 小时前
提升工作效率的Utils
前端·javascript·typescript