نمودار میله‌ای

bar-chartنمودار

ستونی یا افقی، گروهی، انباشته یا صددرصدی، با مقدار منفی، رنگ جدا برای هر دسته و برجسته کردن یک ستون.

فروش فصلی
۱۴۰۴۱۴۰۵
بهار۱۸۲۲۳۶
تابستان۲۰۵۲۵۱
پاییز۱۷۱۲۱۴
زمستان۱۹۶۰

نصب

  1. با CLI

    اگر هنوز init نکردید، اول از راهنمای نصب پروژه را آماده کنید. بعد این دستور کامپوننت و وابستگی‌هاش را می‌نویسه.

    $ npx vibefarsi add bar-chart
  2. نصب دستی

    محتوای تب «کد» را در components/charts/bar-chart.tsx بگذارید. پیش‌نیاز: chart-core.

    $ npm i lucide-react
    کپی کل فایلregistry json

استفاده

usage.tsx
1import { BarChart } from "@/components/charts/bar-chart"23<BarChart title="فروش فصلی" data={quarters} x="q"4  series={[{ key: "y1404", label: "۱۴۰۴" }, { key: "y1405", label: "۱۴۰۵" }]} />56// افقی، از برچسب‌های سمت راست به چپ رشد می‌کنه:7<BarChart title="سهم بانک‌ها" orientation="horizontal" data={banks} x="bank"8  series={[{ key: "count", label: "تراکنش" }]} showValues />

پراپ‌ها

پراپنوعپیش‌فرضتوضیح
orientation"vertical" | "horizontal""vertical"افقی برای برچسب‌های بلند فارسی بهتره.
stack"none" | "stacked" | "percent""none"none سری‌ها را کنار هم می‌گذاره.
showValuesbooleanfalseعدد هر میله (یا جمع انباشته) سر میله نوشته میشه.
colorsstring[]-وقتی فقط یک سری دارید، یک رنگ برای هر دسته.
highlightnumber-بقیه‌ی میله‌ها کم‌رنگ میشن، مثلاً برای ماه جاری.
radiusnumber4فقط سر میله گرد میشه، نه پایه‌اش.

نکته‌ها

  • در حالت گروهی سری اول سمت راست هر دسته قرار می‌گیره تا ترتیب راهنما و میله‌ها یکی باشه.
  • ارتفاع نمودار افقی اگه ندید از تعداد ردیف‌ها حساب میشه.