Skip to content

ChartSparkline 迷你趋势线

用于卡片、列表行、指标摘要中的轻量趋势展示。相比完整折线图,Sparkline 去掉坐标轴和复杂标尺,只保留走势、面积渐变、末端点和触摸高亮。

基础用法

vue
<template>
  <lk-chart-sparkline :data="revenue" :height="160" />
</template>

<script setup lang="ts">
const revenue = [
  { label: '1', value: 28 },
  { label: '2', value: 34 },
  { label: '3', value: 32 },
  { label: '4', value: 45 },
  { label: '5', value: 52 },
  { label: '6', value: 49 },
  { label: '7', value: 64 },
  { label: '8', value: 71 },
];
</script>

紧凑模式

vue
<lk-chart-sparkline
  :data="trend"
  :height="96"
  :padding="8"
  :line-width="4"
  :area="false"
  :show-end-point="false"
/>

数据格式

ts
interface LiteChartPoint {
  label?: string;
  value: number;
}

Props

参数说明类型默认值
data趋势数据LiteChartPoint[][]
height容器高度,数字按 rpx 处理number / string120
padding内边距,单位 rpxnumber12
lineWidth线宽,单位 rpxnumber5
color图表主色,支持主题色或 Canvas 颜色stringprimary
area是否显示面积渐变booleantrue
showEndPoint是否显示末端高亮点booleantrue
tooltip是否启用触摸高亮booleantrue
animationDuration动画时长,单位 msnumber560
effect图表特效等级none / subtle / premiumpremium
effectDuration图表特效周期,单位 msnumber2400

Events

事件名说明回调参数
hoverChange触摸高亮点变化,无高亮时为 -1(index: number)

使用建议

  • 卡片指标内嵌趋势优先用 ChartSparkline
  • 如果需要坐标轴、网格和更明确的触摸提示,改用 ChartArea
  • 列表行中使用时建议关闭 areatooltip,降低视觉和交互负担。

注意事项

TIP

Sparkline 应服务于“趋势感”,不要承载过细的数据读取任务;精确数值建议在卡片主文案或详情页展示。

基于 MIT 协议开源 · 粤ICP备2022114240号-3

ChartSparkline 迷你趋势线

正在连接预览服务...

请先运行 pnpm run dev:h5