การใช้งานและแสดงข้อมูลด้วย Map Tips ในโปรแกรม QGIS

Chingchai Hoomhong
MAPEDIA BLOG
Published in
2 min readJul 2, 2023

สวัสดีครับ วันนี้ผมขอแนะนำเกี่ยวกับเกร็ดเล็กๆ น้อยๆ สำหรับใช้งานโปรแกรม QGIS และการเพิ่มลูกเล่นกับ QGIS ให้ดูน่าสนใจมากขึ้น สำหรับบทความนี้ก็จะเน้นเรื่องของ Map tips ที่ตอนเราเอาเมาส์เลื่อนไปชี้ที่ข้อมูลแล้วให้มีข้อความและรูปภาพแสดงหรือปรากฎขึ้นมาทันทีครับ มาทำพร้อมกันกับผมได้เลยครับ

1 ให้ทำการเปิดโปรแกรม QGIS และเพิ่มชั้นข้อมูลที่ต้องการจะนำเสนอข้อมูลขึ้นมาเลยครับ ในตัวนี้ผมจะใช้ข้อมูลขอบเขตจังหวัดนะครับ

2 ให้คลิกขวาที่ชั้นข้อมูล และเลือก Properties

3 เมื่อเข้ามาสู่ Properties ของข้อมูลนั้นแล้ว ให้คลิกที่แถบเมนูด้านข้างที่ชื่อ Display

จะสังเกตได้ว่าในช่อง Display Name จะสามารถเลือกฟิลด์หรือคอลัมน์ที่เราต้องการจะนำไปแสดงผลได้ จากนั้นคลิก OK

ตัวอย่างจากภาพนี้ผมใช้ pv_th ไปแสดง และจะเห็นได้ว่า ด้านขวามี Preview ให้ดูผลลัพธ์ได้ด้วย (ดีจริงๆ นะ)

4 เมื่อคลิก OK แล้ว เราไปดูผลลัพธ์กัน แต่ต้องเอาเมาส์ไปคลิกที่ปุ่ม Show Map Tips ก่อนนะครับ ดังรูปด้านล่าง

5 จากนั้นก็เลื่อนเมาส์ไปชี้ที่แผนที่ดูเลยครับ

6 จากนั้นผมเข้าใจว่า เจ้าตัว Map tip ใน QGIS เนี่ยมันรองรับภาษา HTML ผมเลยลองเอารูปแบบการแสดงข้อมูลโดยใช้ HTML มาเขียน ดังตัวอย่าง Sctipt ด้านล่างนี้ครับ

<style>
h1 {
color: green;
font-family: kanit;
font-size: 20pt;
}
p {
color: pink;
font-family: kanit;
font-size: 14pt;
}
</style>

<!-- pv_th คือชื่อคอลัมน์ สามารถเปลี่ยนเป็นชื่อคอลัมน์เราเองได้เช่นเดียวกันกับ areashape และ pop เด้อ -->
<h1>[% "pv_th" %]</h1>
<hr>
<p><b>พื้นที่:</b> [% round("areashape",3) %] ตร.กม.</p>
<p><b>ประชากร:</b> [% "pop" %] คน</p>

สังเกตผลที่ได้ในช่อง Preview ก็ได้นะครับ

7 เมื่อคลิก OK แล้วเรามาทำการเลื่อนเมาส์ไปดูผลลัพธ์กันเลยย (ว้าว แสดงข้อมูลขึ้นมาแล้วววว !!! )

8 ผมเพิ่มการแสดงผลโดยการนำเอารูปภาพมาแสดงร่วมด้วย ดังตัวอย่าง Script ด้านล่าง

<style>
h1 {
color: green;
font-family: kanit;
font-size: 20pt;
}
p {
color: pink;
font-family: kanit;
font-size: 14pt;
}
</style>

<!-- pv_th คือชื่อคอลัมน์ สามารถเปลี่ยนเป็นชื่อคอลัมน์เราเองได้เช่นเดียวกันกับ areashape และ pop เด้อ -->
<h1>[% "pv_th" %]</h1>
<hr>
<p><b>พื้นที่:</b> [% round("areashape",3) %] ตร.กม.</p>
<p><b>ประชากร:</b> [% "pop" %] คน</p>
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b6/Flag_of_Bangkok.svg/1920px-Flag_of_Bangkok.svg.png" alt="Trulli" width="200">

มีรูปภาพออกมาแล้ว สังเกตจาก Preview

9 เรามาดูผลลัพธ์กัน นี่ไงออกมาแล้ววว ++_++

--

--