Metabase

نقشه‌های سفارشی

به‌طور پیش‌فرض، متابیس برای نمایش‌های نقشه‌ای از OpenStreetMap استفاده می‌کند، اما چند امکان سفارشی‌سازی هم در اختیار شما قرار می‌دهد.

تنظیمات نقشه

برای دسترسی به تنظیمات نقشه:

  1. در گوشهٔ بالا سمت راست صفحه روی آیکون چرخ‌دنده کلیک کنید و به Admin settings > Settings بروید.
  2. از منوی سمت چپ، گزینهٔ Maps را انتخاب کنید.

Map Settings

سرور Tile نقشه

به‌طور پیش‌فرض، متابیس برای نقشه‌های Pin و Grid از سرور Tile سرویس OpenStreetMap استفاده می‌کند. اگر سازمان شما برای نمایش نقشه‌ها ظاهر متفاوتی یا سطح جزئیات دیگری لازم داشته باشد، می‌توانید با واردکردن مسیر سرور Tile دلخواه در فیلد اول صفحه، این سرور را تغییر دهید.

مسیر باید یا یک URL با آغاز http:// یا https:// باشد، یا یک مسیر نسبی به فایلی محلی در Classpath مربوط به JVM.

در حال حاضر، متابیس فقط از یک Tile Server برای هر اینستنس استفاده می‌کند و نمی‌توانید برای هر نقشه، Tile متفاوتی تعیین کنید.

نقشه‌های ناحیه‌ای سفارشی

متابیس همراه با دو نقشهٔ ناحیه‌ای پیش‌فرض ارائه می‌شود: نقشهٔ جهان (به تفکیک کشورها) و نقشهٔ ایالات متحده (به تفکیک ایالت‌ها).

اگر به نقشهٔ ناحیه‌ای دیگری مثل کشورهای اتحادیهٔ اروپا یا محله‌های نیویورک نیاز دارید، می‌توانید یک فایل GeoJSON شامل اطلاعات ناحیه‌ها معرفی کنید. معمولاً با جست‌وجوی اینترنتی «نام منطقه + geojson» می‌توانید فایل‌های آماده پیدا کنید؛ مثل «NYC neighborhoods GeoJSON». بسیاری از سازمان‌های دولتی و اعضای جامعهٔ متن‌باز این نوع فایل‌ها را برای نواحی متداول منتشر کرده‌اند. همچنین می‌توانید با ابزارهایی مثل MapShaper یا GeoJSON.io GeoJSON اختصاصی خودتان را بسازید.

فایل GeoJSON شما باید شرایط زیر را داشته باشد:

  • حجم آن کمتر از ۵ مگابایت باشد.
  • شامل Featureهایی از نوع Polygon برای تعریف ناحیه‌ها باشد (فقط نقطه یا مختصات صرف نباشد).
  • برای تعریف چندضلعی‌های ناحیه‌ها از مختصات جغرافیایی (عرض و طول جغرافیایی) استفاده کند. متابیس از مختصات Projected پشتیبانی نمی‌کند و در صورت استفاده باید آن‌ها را به مختصات جغرافیایی تبدیل کنید.
  • از طریق یک URL عمومی در دسترس باشد. در حال حاضر امکان آپلود مستقیم فایل GeoJSON در خود متابیس وجود ندارد.

برای افزودن یک نقشهٔ سفارشی:

  1. به Admin settings > Maps > Custom Maps بروید.
  2. روی Add a Map کلیک کنید.
  3. یک نام برای نقشه وارد کنید.
  4. URL فایل GeoJSON را قرار دهید.
  5. فیلدهای JSON مربوط به «شناسهٔ ناحیه» و «نام نمایشی ناحیه» را مشخص کنید.

Uploading a custom GeoJSON

  • Name of the map یا نام نقشه در Selector مربوط به نقشه‌های ناحیه‌ای سفارشی نمایش داده می‌شود.
  • Region's identifier فیلدی در GeoJSON است که ناحیهٔ شما را «شناسه‌گذاری» می‌کند. مقدارهای این فیلد باید با نحوهٔ ارجاع به ناحیه‌ها در داده‌های شما هم‌خوانی داشته باشند. این فیلد الزاماً نباید با «نام نمایشی» برابر باشد.
  • Region's display name فیلدی در GeoJSON است که مشخص می‌کند نام هر ناحیه روی نقشه چگونه نمایش داده شود. این فیلد می‌تواند با شناسهٔ ناحیه متفاوت باشد.

برای پیش‌بارگذاری یک یا چند نقشهٔ ناحیه‌ای در هنگام راه‌اندازی متابیس، می‌توانید از متغیر محیطی MB_CUSTOM_GEOJSON یا گزینهٔ custom-geojson در فایل پیکربندی استفاده کنید.

برای غیرفعال‌کردن امکان ساخت نقشه‌های سفارشی، از متغیر محیطی MB_CUSTOM_GEOJSON_ENABLED یا گزینهٔ custom-geojson-enabled در فایل پیکربندی استفاده کنید.