ایجاد خودکار نقشه با اطلس طرح بندی چاپی (QGIS3)
اگر سازمان شما نقشههای چاپی یا آنلاین را منتشر میکند، اغلب باید نقشههای زیادی را با الگوی یکسان ایجاد کنید – معمولاً برای هر واحد اداری یا منطقه مورد علاقه. ایجاد این نقشه ها به صورت دستی می تواند زمان زیادی طول بکشد و اگر بخواهید این نقشه ها را به طور منظم به روز کنید، می تواند به یک کار طاقت فرسا تبدیل شود. QGIS ابزاری به نام دارد Atlas
که می تواند به شما در ایجاد یک الگوی نقشه کمک کند و به راحتی تعداد زیادی نقشه را برای مناطق مختلف جغرافیایی منتشر کنید. اگر با اصول اولیه چیدمان چاپ آشنا نیستید، لطفاً آموزش ساخت نقشه را مطالعه کنید .
نمای کلی کار
این آموزش نحوه ایجاد نقشه تالاب ها برای هر شهرستان در ایالت هاوایی را نشان می دهد.
خواهید گرفت
- استفاده از رندر سبک برای پر کردن مناطق خارج از چند ضلعی.
Inverted Polygons
- یک عبارت در رندر سبک بنویسید تا فقط ویژگی فعلی در اطلس نشان داده شود.
Rule Based
- یک عبارت برای ایجاد برچسب های پویا در طرح بندی چاپ بنویسید.
- استفاده از رندر سبک برای ایجاد یک پرکننده چند ضلعی دو رنگ.
Shapeburst fill
دریافت داده ها
ما از لایه های داده GIS از ایالت هاوایی – دفتر برنامه ریزی استفاده خواهیم کرد
لایه تالاب را از دسته بیولوژیک و اکولوژیک دانلود کنید .
لایه Census County Boundaries 2010 را از دسته فرهنگی و جمعیتی دانلود کنید .
برای راحتی کار، میتوانید مستقیماً یک کپی از هر دو مجموعه داده را از لینکهای زیر دانلود کنید:
منبع داده [HAWAII]
HI_Wetlands.shp.zip
فایل را در مرورگر QGIS بیابید و آن را گسترش دهید. فایل را انتخاب کنیدHI_Wetlands_Poly.shp
و آن را روی بوم بکشید. این لایه حاوی چند ضلعی است که نشان دهنده تالاب ها در کل ایالت هاوایی است.
- از آنجایی که می خواهیم برای هر شهرستان در ایالت نقشه تالاب جداگانه تهیه کنیم، به لایه مرزی شهرستان نیاز داریم. فایل را مرور کنید
county10.shp.zip
و آن را گسترش دهید. فایل را انتخاب کنیدcounty10.shp
و آن را روی بوم بکشید.
- نمایان بودن لایه را به طور موقت خاموش کنید
HI_Wetlands_Poly
. اکنون چند ضلعی های لایه را به وضوح خواهید دیدcounty10
. 5 ویژگی در این لایه وجود دارد که هر ویژگی دارای ۱ یا چند چند ضلعی است. ویژگی ها نشان دهنده ۵ شهرستان است. ما از این لایه به عنوان لایه پوشش استفاده می کنیم و QGIS را برای ایجاد ۵ نقشه جداگانه – یکی برای هر ویژگی – به طور خودکار پیکربندی می کنیم.
- نمایان بودن لایه را روشن کنید
HI_Wetlands_Poly
. برو به .
- عنوان طرح چاپ را خالی بگذارید و روی OK کلیک کنید .
- در پنجره Print Layout ، به بروید .
- یک مستطیل را در حالی که دکمه سمت چپ ماوس را در جایی که میخواهید نقشه را درج کنید نگه دارید بکشید.
- در QGIS3، تب Atlas به طور پیش فرض قابل مشاهده نیست. انتخاب کنید .
- به تب Atlas بروید . کادر Generate an atlas را علامت بزنید .
county10
لایه پوشش را انتخاب کنید . این نشان می دهد که ما می خواهیم برای هر یک از ویژگی های چند ضلعی درcounty10
لایه، ۱ نقشه ایجاد کنیم. همچنین می توانید لایه پوشش پنهان را بررسی کنید تا خود ویژگی ها روی نقشه ظاهر نشوند.
- به تب ویژگی های آیتم بروید . به پایین اسکرول کنید و کادر Controlled by atlas را علامت بزنید . این نشان می دهد که چیدمان که محتوای نقشه نمایش داده شده در این مورد توسط
Atlas
ابزار تعیین می شود.
توجه داشته باشید
باید کادر Generare an atlas را در تب Atlas فعال کنید ، در غیر این صورت چک باکس Controlled by atlas غیرفعال می شود.
- اکنون که تنظیمات Atlas را پیکربندی کردید، به بروید .
- شما نقشه را بهروزرسانی میکنید و نشان میدهید که نقشه فردی چگونه به نظر میرسد. میتوانید پیشنمایش کنید که چگونه نقشه برای هر یک از چند ضلعیهای شهرستان نگاه میکند. به بروید . اطلس نقشه را به اندازه ویژگی بعدی در لایه پوشش ارائه می کند.
- بیایید یک برچسب به نقشه اضافه کنیم. به بروید .
- در زبانه Item properties ، قسمت Main properties را پیدا کرده و روی دکمه Insert an Expression… کلیک کنید .
- برچسب نقشه می تواند از ویژگی های لایه پوشش استفاده کند. این
concat
تابع برای پیوستن چندین مورد متنی به یک آیتم متنی واحد استفاده می شود. در این صورت مقدارNAME10
ویژگیcounty10
لایه را با متن میپیوندیم . عبارتی مانند زیر اضافه کنید و روی OK کلیک کنید .County of
concat('County of ', "NAME10")
- متن مکاننمای اصلی Lorem ipsum را حذف کنید تا جعبه متن فقط شامل عبارت باشد. به قسمت Appearance بروید و روی گزینه Font کلیک کنید . فونت را انتخاب کنید و اندازه را به دلخواه تنظیم کنید.
Center
به عنوان گزینه Horizontal alignment وMiddle
به عنوان گزینه Vertical alignment را انتخاب کنید .
- یک برچسب دیگر اضافه کنید و در قسمت Main properties وارد کنید . از آنجایی که هیچ عبارتی در اینجا وجود ندارد، این متن در همه نقشه ها یکسان خواهد ماند.
Wetlands Map
- بروید و بررسی کنید که برچسب های نقشه همانطور که در نظر گرفته شده است کار می کنند. متوجه خواهید شد که نقشه تالاب دارای چند ضلعی است که به داخل اقیانوس کشیده شده است که زشت به نظر می رسد. میتوانیم این سبک را تغییر دهیم که مناطق خارج از مرزهای شهرستان پنهان هستند.
- به پنجره اصلی QGIS بروید. روی لایه کلیک راست کرده
county10
و Properties را انتخاب کنید .
- در تب نمادشناسی ، نمایشگر چند ضلعی معکوس را انتخاب کنید . این رندر بیرون چند ضلعی را استایل می دهد – نه داخل. رنگ سفید را به عنوان رنگ پر انتخاب کنید و روی OK کلیک کنید .
- متوجه خواهید شد که چند ضلعی های خارج از مرزهای شهرستان اکنون ناپدید شده اند. در واقع، به دلیل سبک چند ضلعی های معکوس ، آنها با پر کردن رنگ سفید که از چند ضلعی های شهرستان خارج می شود، پنهان می شوند .
- به پنجره Layout بروید . اگر بخواهیم جلوه چند ضلعی های معکوس نشان داده شود، باید تیک کادر لایه پوشش پنهان را در زیر تب Atlas برداریم . پس از برداشتن علامت، تصویر رندر شده تمیز به نظر می رسد و مناطق خارج از چند ضلعی پوشش قابل مشاهده نیستند.
- اگرچه یک مشکل دیگر وجود دارد. متوجه خواهید شد که در برخی موارد، قسمت هایی از نقشه که خارج از مرز لایه پوشش هستند همچنان قابل مشاهده هستند. این به این دلیل است که Atlas به طور خودکار سایر ویژگی ها را پنهان نمی کند. این می تواند در برخی موارد مفید باشد، اما برای هدف ما فقط می خواهیم تالاب های شهرستانی را نشان دهیم که نقشه آن در حال تولید است. برای رفع این مشکل، به پنجره اصلی QGIS برگردید و روی
county10
لایه کلیک راست کرده و Properties را انتخاب کنید .
- در برگه نمادشناسی ،
Rule-based
به عنوان Sub renderer انتخاب کنید . روی ناحیه زیر Rule دوبار کلیک کنید .
- در گفتگوی ویرایش قانون ، روی دکمه Expression در کنار فیلتر کلیک کنید .
- در سازنده رشته Expression ، گروه توابع Variables را گسترش دهید. متغیر
@atlas_featureid
شناسه ویژگی انتخاب شده فعلی را ذخیره می کند. ما یک عبارت می سازیم که فقط ویژگی Atlas را انتخاب می کند. عبارت زیر را وارد کرده و OK کنید .
$id = @atlas_featureid
- تمام گفتگوهای میانی را ببندید و به پنجره Layout برگردید . مورد نقشه ۱ را انتخاب کنید و روی دکمه بهروزرسانی پیشنمایش در تب ویژگیهای مورد کلیک کنید تا تغییرات را ببینید. توجه داشته باشید که اکنون فقط منطقه ای که مرز شهرستان را پوشش می دهد نشان داده شده است.
توجه داشته باشید
اگر دکمه پیشنمایش بهروزرسانی را نمیبینید ، ممکن است ابتدا عنصر دیگری را انتخاب کنید و سپس نقشه ۱ را دوباره انتخاب کنید.
- اکنون یک برچسب پویا دیگر برای نشان دادن تاریخ فعلی اضافه می کنیم. به بروید و منطقه را روی نقشه انتخاب کنید. روی دکمه Insert an expression کلیک کنید .
- گروه توابع تاریخ و زمان را گسترش دهید و تابع را پیدا خواهید کرد
$now
. این زمان سیستم فعلی را نگه می دارد. تابعtodate()
این را به یک رشته تاریخ تبدیل می کند. عبارت زیر را وارد کرده و OK کنید .
concat('Created on: ', todate($now))
- برچسب دیگری با ذکر منبع داده اضافه کنید. همچنین می توانید سایر عناصر نقشه مانند فلش شمال، نوار مقیاس و غیره را اضافه کنید. همانطور که در آموزش ساخت نقشه توضیح داده شد .
- ما آخرین بهبود استایل را انجام خواهیم داد. به پنجره اصلی QGIS برگردید و روی
HI_Wetlands_Poly
لایه کلیک راست کرده و Properties را انتخاب کنید .
- در تب نمادشناسی ، روی Simple fill کلیک کرده و نوع لایه Symbol را انتخاب کنید . گزینه Two color را انتخاب کنید و سایه های سبز و آبی را که دوست دارید انتخاب کنید. روی OK کلیک کنید .
Shapeburst fill
- مورد نقشه ۱ را انتخاب کنید و روی دکمه بهروزرسانی پیشنمایش در تب ویژگیهای مورد کلیک کنید تا تغییرات را ببینید.
- هنگامی که از طرح و استایل نقشه راضی شدید، به بروید .
- دایرکتوری را در رایانه خود انتخاب کنید و روی انتخاب کلیک کنید .
- گزینه های پیش فرض را در Image Export Options بگذارید و روی Save کلیک کنید .
- ابزار Atlas اکنون از طریق هر ویژگی در لایه پوشش تکرار می شود و یک تصویر نقشه جداگانه بر اساس قالبی که ایجاد کردیم ایجاد می کند. پس از اتمام فرآیند می توانید تصاویر را در دایرکتوری مشاهده کنید.
- در اینجا تصاویر نقشه برای مرجع هستند.
اگر می خواهید بازخورد بدهید یا تجربه خود را در مورد این آموزش به اشتراک بگذارید، لطفاً در زیر نظر دهید. (به حساب GitHub نیاز دارد)