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

react+echarts实现变化趋势缩略图

缩略图示意
如上图,实现一个缩略图。

import React, { useState, useEffect } from 'react';
const ParentCom = () => {const [data, setData] = useState({});useEffect(() => {// 这里可以做一些接口请求等操作setData({isSheng: false, value: 11.24, percentage: '2.3%', data: {xData: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],yData: [820, 233, 121, 934, 12, 130, 320],},});},[]);return <div><div>{/*页面的其他渲染内容*/}</div><ThumbnailChartsCom id={'yeasterday-search-time'}data={data} /></div>
};
export default ParentCom;
import React, { memo, useEffect, useRef } from 'react';import { LineChart } from 'echarts/charts';
import { GridComponent } from 'echarts/components';
import * as echarts from 'echarts/core';
import { UniversalTransition } from 'echarts/features';
import { CanvasRenderer } from 'echarts/renderers';import styles from './index.module.less';echarts.use([GridComponent,LineChart,CanvasRenderer,UniversalTransition,
]);
interface IThumbnail {xData: string[];yData: number[];
}
const ThumbnailChartsCom = ({ id, data }: { id: string, data: IThumbnail }) => {const chartRef = useRef<HTMLDivElement>(null);useEffect(() => {const chartDom = chartRef.current;if (!chartDom) return;const myChart = echarts.init(chartDom);const option = {grid: {top: '0',left: '0',right: '0',bottom: '0',containLabel: true,},// 设置x轴的类型为类目轴,不显示边界间隙xAxis: {type: 'category',boundaryGap: false,show: false,// 设置x轴的数据data: data.xData || [],},// 设置y轴的类型为数值轴yAxis: {type: 'value',axisTick: { show: false }, // 隐藏 Y 轴的刻度线axisLabel: { show: false },  // 隐藏 Y 轴的标签splitLine: {show: false,}, // 隐藏 Y 轴的分割线},// 设置图表的系列数据series: [{// 设置系列数据data: data.yData || [],type: 'line', // 设置系列数据的类型为折线图symbol: 'none', // 不显示折线图上的点smooth: true, // 平滑曲线lineStyle: {color: '#375EFF',},// 设置系列数据的区域样式areaStyle: {opacity: 0.3,},},],};option && myChart.setOption(option);const handleResize = () => {myChart.resize();};window.addEventListener('resize', handleResize);return () => {window.removeEventListener('resize', handleResize);myChart.dispose(); // 销毁ECharts实例};}, [data, id]);// 返回一个div元素,用于显示图表return <div ref={chartRef} id={id} className={styles.chartsWrap} />;
};export default memo(ThumbnailChartsCom);

思路

将折线图的横纵轴信息、标题、图例、信息卡、刻度线等全部隐藏起来。

http://www.lryc.cn/news/614315.html

相关文章:

  • 我的c#用到Newtonsoft.Json.dll,Fleck.dll这两个dll能否打到一个exe 中,而不是一起随着exe拷贝
  • 无人机仿真环境搭建
  • 使用pytest对接口进行自动化测试
  • 微软XBOX游戏部门大裁员
  • QS菜单栏的安全与隐私Tile组件(GMS中的)加载逻辑
  • 使用 C# 通过 .NET 框架开发应用程序的安装与环境配置
  • Godot ------ 通过鼠标对节点进行操作
  • 僵尸进程、孤儿进程、进程优先级、/proc 文件系统、CRC 与网络溢出问题处理(实战 + 原理)
  • 强制用户更改WordPress密码的重要性及实现方法
  • Linux 内存管理之page folios
  • 电脑定时开关机终极指南
  • 静态路由主备切换
  • 2025产品经理接单经验分享与平台汇总
  • 腾讯云 CodeBuddy IDE:可以使用gpt5的ide
  • 操作系统-实验-进程
  • CVRF 是什么?微软弃用 MS 编号后,网络安全的下一个标准
  • 文件结构树的├、└、─ 符号
  • Java文件操作和IO
  • R语言代码加密(1)
  • 无人机航拍数据集|第9期 无人机风力电机表面损伤目标检测YOLO数据集2995张yolov11/yolov8/yolov5可训练
  • 【前端】纯代码实现Power BI自动化
  • 深入解析K-means聚类:从原理到调优实战
  • Milvus向量数据库版本升级
  • Agent 开发进阶路线:从基础功能到自主决策
  • [Python]代码随想录Day35[动态规划][背包问题]
  • ELK+Redis+Nginx多节点部署实战:从日志收集到可视化分析
  • Docker容器部署discuz论坛与线上商城
  • Centos7升级redis
  • springboot读取编译时传递的参数
  • Spring AI 系列之四十 - Spring AI Alibaba-集成百炼智能体