پرتوپرتو

ابر کلمات (Word Cloud)

کامپوننت ابر کلمات برای نمایش بصری فراوانی کلمات

معرفی

ابر کلمات یک روش بصری برای نمایش فراوانی کلمات است که در آن اندازه هر کلمه نشان‌دهنده اهمیت یا تکرار آن است.

پیش‌نمایش

استفاده

import { PartoWordCloud } from '@parto-system-design/ui';

const words = [
  { text: '#بلاگر', value: 17 },
  { text: '#صدای_تبریز', value: 16 },
  { text: '#کفش', value: 16 },
  { text: '#برف', value: 13 },
  { text: '#تراکتور', value: 12 },
  { text: '#للبيع', value: 11 },
  { text: '#ورزش', value: 11 },
  { text: '#ثروت', value: 10 },
  { text: '#آموزش', value: 7 },
  { text: '#کفش_زنانه', value: 6 },
];

<PartoWordCloud
  words={words}
  width={900}
  height={400}
  padding={4}
  spiral="rectangular"
  rotate={0}
/>

مثال با هشتگ‌ها

const hashtags = [
  { text: '#MerryChristmas', value: 2 },
  { text: '#iran', value: 2 },
  { text: '#fadaei', value: 2 },
  { text: '#تکست_ناب', value: 3 },
  { text: '#حرف_حق', value: 4 },
  { text: '#دلار', value: 4 },
  { text: '#رزمی', value: 5 },
  { text: '#سجاف', value: 5 },
];

<PartoWordCloud
  words={hashtags}
  width={900}
  height={400}
  padding={4}
  spiral="rectangular"
  rotate={0}
/>

Props

Prop

Type

نوع داده WordData

interface WordData {
  text: string;    // متن کلمه
  value: number;   // مقدار فراوانی یا وزن
}

ویژگی‌ها

  • تم خودکار: رنگ کلمات از رنگ primary تم استفاده می‌کند
  • مقیاس لگاریتمی: اندازه فونت با استفاده از مقیاس لگاریتمی محاسبه می‌شود
  • الگوهای مختلف: دو الگوی archimedean و rectangular برای چیدمان
  • فونت فارسی: از فونت یکان‌باخ برای نمایش متن فارسی استفاده می‌کند
  • قابل تنظیم: امکان تنظیم اندازه، فاصله و چرخش کلمات

نکات

  • مقدار value هر کلمه باید عددی مثبت باشد
  • برای چیدمان پایدار، از تابع random ثابت استفاده کنید
  • الگوی archimedean برای توزیع طبیعی‌تر مناسب است
  • الگوی rectangular برای چیدمان فشرده‌تر مناسب است
  • برای متن‌های فارسی، rotate={0} توصیه می‌شود

موارد استفاده

  • نمایش کلمات کلیدی محبوب
  • تحلیل هشتگ‌های پرتکرار
  • نمایش موضوعات داغ
  • تحلیل محتوای متنی
  • داشبوردهای تحلیلی