月度投稿(垂直柱状)
流量来源(水平条形)
<div class="chart-grid"> <div> <p class="chart-cap">月度投稿(垂直柱状)</p> <div class="icen-chart" id="bar-vbar"></div> </div> <div> <p class="chart-cap">流量来源(水平条形)</p> <div class="icen-chart" id="bar-hbar"></div> </div></div>
特性
- 两形态:
renderVBar垂直柱状 /renderHBar水平条形 - 入口:同一 kit 引入
接口
- 导出
-
renderVBarrenderHBar共享行为模块,清单含族内导出 - 事件
-
icen:chart-legend-toggleicen:chart-legend-visibilityicen:chart-zoomdetail 契约见IcenEventMap;共享行为模块,清单含族内事件 - 类型
dist/behaviors/charts.d.mts(随 npm 包发布,含全部 JSDoc 约束)
安装
bun add @icen.ai/ui pnpm add @icen.ai/ui npm install @icen.ai/ui yarn add @icen.ai/ui 一行引入该组件(CSS 与 behavior 自动带上,无需关心内部 CSS 文件名):
import '@icen.ai/ui/kit/chart-bar';
也可以用脚手架直接打印引入行:
bunx --bun @icen.ai/ui add chart-bar
Astro 项目注意:kit 入口里的 CSS import 在页面 <script> 里会被 Astro 的 client bundle 摇掉——请改在布局 frontmatter 里引 CSS(import '@icen.ai/ui/components/chart-bar.css';),JS 行为仍可走 kit。Vite SPA / webpack 项目无此问题。
用法
import { renderVBar, renderHBar } from '@icen.ai/ui/kit/chart-bar';renderVBar(el, { labels: ['一月','二月'], values: [12, 19] });renderHBar(el, { labels: ['搜索','直接'], values: [320, 80], tone: 'success' });