عنوان:

‫ایجاد نمودارها در دات نت با استفاده از SkiaSharp


نویسنده: وحید نصیری
تاریخ: ۱۴۰۳/۱۲/۱۳ ۰۸:۲۴
آدرس: www.dntips.ir
مقدمه
  • SkiaSharp یک کتابخانه گرافیکی دو بعدی (2D graphics library) قدرتمند و سبک برای دات نت (NET.) است.
  • این کتابخانه به توسعه دهندگان اجازه می‌دهد تا تصاویر را ایجاد کنند، اشکال را ترسیم کنند و نمودارها را به راحتی تولید کنند.
  • در اینجا، نحوه استفاده از SkiaSharp برای ایجاد انواع مختلف نمودار و ذخیره آنها به عنوان فایل های تصویری را بررسی می کنیم.

چرا SkiaSharp؟
  • چندسکویی (Cross-platform): روی ویندوز، لینوکس، مک او اس و دستگاه های تلفن همراه کار می‌کند.
  • عملکرد (Performance): از شتاب دهنده گرافیکی (GPU acceleration) برای رندر سریع استفاده می‌کند.
  • استفاده آسان: رابط برنامه نویسی کاربردی (API) ساده برای ترسیم اشکال، متن و تصاویر دارد.

راه اندازی SkiaSharp در دات نت
  • برای شروع استفاده از SkiaSharp، بسته NuGet را نصب کنید:
    • dotnet add package SkiaSharp
ایجاد نمودار خطی (Line Chart)
  • نمودار خطی برای نشان دادن روندها در طول زمان مفید است.
  • مثال ساده:
    • یک بیت مپ (bitmap) و بوم نقاشی (canvas) با ابعاد مشخص ایجاد می‌کند.
    • بوم نقاشی را با رنگ سفید پاک می کند.
    • یک قلم مو (paint) با رنگ آبی و ضخامت مشخص ایجاد می‌کند.
    • با استفاده از canvas.DrawLine() یک خط بین دو نقطه ترسیم می‌کند.
    • بیت مپ را به عنوان یک تصویر PNG رمزگذاری می کند.
    • تصویر را در یک فایل ذخیره می کند.

ایجاد نمودار میله‌ای (Bar Chart)
  • نمودار میله‌ای برای مقایسه دسته بندی‌های مختلف عالی است.
  • مثال:
    • یک بیت مپ و بوم نقاشی ایجاد می‌کند.
    • بوم نقاشی را پاک می‌کند.
    • یک قلم مو با رنگ سبز ایجاد می‌کند.
    • با استفاده از canvas.DrawRect() چند مستطیل (میله) را ترسیم می‌کند.
    • تصویر را ذخیره می کند.

ایجاد نمودار دایره‌ای (Pie Chart)
  • نمودار دایره‌ای برای نمایش نسبت‌ها استفاده می شود.
  • مثال:
    • یک بیت مپ و بوم نقاشی ایجاد می‌کند.
    • بوم نقاشی را پاک می‌کند.
    • چندین قلم مو با رنگ‌های مختلف ایجاد می‌کند.
    • با استفاده از canvas.DrawArc() چند قوس (قطعه دایره) را ترسیم می‌کند.
    • تصویر را ذخیره می کند.

نتیجه گیری
  • SkiaSharp ایجاد نمودارها در دات نت را با چند خط کد، آسان می‌کند.
  • می‌توانید رنگ‌ها، اندازه‌ها و برچسب‌ها را برای ایجاد تجسم‌های زیبا سفارشی کنید.
  • کد منبع کامل در مخزن GitHub نویسنده موجود است.



مشاهده مطلب اصلی