วิธีสร้าง Python Heatmap ด้วย Seaborn [คำอธิบายที่ครอบคลุม]

เผยแพร่แล้ว: 2021-10-06

ธุรกิจในยุคของ Big Data เต็มไปด้วยข้อมูลจำนวนมากในแต่ละวัน อย่างไรก็ตาม ไม่ใช่จำนวนข้อมูลที่เกี่ยวข้องทั้งหมด แต่มีความสำคัญกับข้อมูลอย่างไร ดังนั้นจึงต้องวิเคราะห์ข้อมูลขนาดใหญ่เพื่อให้ได้ข้อมูลเชิงลึกที่จะกำหนดการตัดสินใจที่ดีขึ้นในท้ายที่สุดและมีอิทธิพลต่อการขับเคลื่อนธุรกิจเชิงกลยุทธ์

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

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

บทความนี้จะแนะนำคุณเกี่ยวกับแนวคิดของแผนที่ความร้อนใน Python และวิธีสร้างแผนที่โดยใช้ Seaborn

สารบัญ

แผนที่ความร้อนคืออะไร?

แผนที่ความหนาแน่นใน Python เป็นเทคนิคการสร้างภาพข้อมูลโดยที่สีจะแสดงว่าค่าที่น่าสนใจเปลี่ยนแปลงไปอย่างไรกับค่าของตัวแปรอื่นๆ อีก 2 ตัว เป็นการแสดงข้อมูลแบบกราฟิกสองมิติด้วยค่าที่เข้ารหัสด้วยสี จึงให้มุมมองข้อมูลที่เรียบง่าย ลึกซึ้ง และดึงดูดสายตา ภาพด้านล่างเป็นการแสดงแผนที่ความหนาแน่นอย่างง่าย

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

แผนที่ความหนาแน่นจะค้นหาแอปพลิเคชันในสถานการณ์จริงต่างๆ ตัวอย่างเช่น พิจารณาแผนที่ความร้อนด้านล่าง เป็นแผนที่ความหนาแน่นของดัชนีหุ้นที่ระบุแนวโน้มในตลาดหุ้น แผนที่ความหนาแน่นใช้รูปแบบสีเย็นถึงร้อนเพื่อแสดงว่าหุ้นใดเป็นขาลงและหุ้นใดเป็นขาขึ้น อันแรกใช้สีแดงแทน ส่วนหลังใช้สีเขียว

แหล่งที่มา

แผนที่ความหนาแน่นมีประโยชน์ในด้านอื่นๆ อีกหลายประการ ตัวอย่างบางส่วน ได้แก่ แผนที่ความหนาแน่นของเว็บไซต์ แผนที่ความหนาแน่นทางภูมิศาสตร์ และแผนที่ความหนาแน่นของกีฬา ตัวอย่างเช่น คุณสามารถใช้แผนที่ความร้อนเพื่อทำความเข้าใจว่าปริมาณน้ำฝนแตกต่างกันไปในแต่ละเดือนของปีในแต่ละเมืองอย่างไร แผนที่ความหนาแน่นยังมีประโยชน์อย่างมากในการศึกษาพฤติกรรมของมนุษย์

แผนที่ความร้อนสหสัมพันธ์

แผนที่ความหนาแน่นสหสัมพันธ์เป็นเมทริกซ์สองมิติที่แสดงความสัมพันธ์ระหว่างตัวแปรที่แตกต่างกันสองตัว แถวของตารางแสดงค่าของตัวแปรตัวแรก ในขณะที่ตัวแปรที่สองจะปรากฏเป็นคอลัมน์ เช่นเดียวกับแผนที่ความหนาแน่นปกติ แผนที่ความหนาแน่นแบบสหสัมพันธ์ยังมาพร้อมกับแถบสีเพื่ออ่านและทำความเข้าใจข้อมูล

แบบแผนชุดสีที่ใช้เป็นแบบที่ปลายด้านหนึ่งของชุดสีแสดงถึงจุดข้อมูลค่าต่ำ และอีกด้านสิ้นสุดจุดข้อมูลค่าสูง ดังนั้น แผนที่ความหนาแน่นของสหสัมพันธ์จึงเหมาะอย่างยิ่งสำหรับการวิเคราะห์ข้อมูล เนื่องจากนำเสนอรูปแบบในรูปแบบที่อ่านง่าย ในขณะเดียวกันก็เน้นความผันแปรในข้อมูลด้วย

รับด้านล่างเป็นการแสดงแบบคลาสสิกของแผนที่ความร้อนสหสัมพันธ์

แหล่งที่มา

การสร้าง Seaborn Heatmap ใน Python

Seaborn เป็นไลบรารี Python ที่ใช้สำหรับการสร้างภาพข้อมูลและอิงจาก matplotlib เป็นสื่อที่ให้ข้อมูลและดึงดูดสายตาเพื่อนำเสนอข้อมูลในรูปแบบกราฟสถิติ ในแผนที่ความหนาแน่นที่สร้างขึ้นโดยใช้ Seaborn จานสีจะแสดงถึงความผันแปรในข้อมูลที่เกี่ยวข้อง หากคุณเป็นมือใหม่และต้องการได้รับความเชี่ยวชาญด้านวิทยาศาสตร์ข้อมูล โปรดดูหลักสูตรวิทยาศาสตร์ข้อมูลของเรา

ขั้นตอนในการสร้างแผนที่ความร้อนใน Python

ขั้นตอนต่อไปนี้ให้โครงร่างคร่าวๆ เกี่ยวกับวิธีสร้างแผนที่ความหนาแน่นอย่างง่ายใน Python:

  • นำเข้าแพ็คเกจที่จำเป็นทั้งหมด
  • นำเข้าไฟล์ที่คุณได้จัดเก็บข้อมูลของคุณ
  • พล็อตแผนที่ความร้อน
  • แสดงแผนที่ความหนาแน่นโดยใช้ matplotlib

ตอนนี้ ให้เราแสดงให้คุณเห็นถึงวิธีที่สามารถนำมาใช้สร้างแผนที่ความร้อนร่วมกับ matplotlib และแพนด้าได้

ในตัวอย่างนี้ เราจะสร้างแผนที่ความร้อนจากทะเลใน Python สำหรับหุ้นของบริษัทเภสัชกรรม 30 แห่ง แผนที่ความหนาแน่นที่ได้จะแสดงสัญลักษณ์หุ้นและการเปลี่ยนแปลงราคาเป็นเปอร์เซ็นต์ในวันเดียวตามลำดับ เราจะเริ่มต้นด้วยการรวบรวมข้อมูลตลาดของหุ้นยา และสร้างไฟล์ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค) ซึ่งประกอบด้วยสัญลักษณ์หุ้นและเปอร์เซ็นต์การเปลี่ยนแปลงของราคาที่สอดคล้องกันในสองคอลัมน์แรกของไฟล์ CSV ดังกล่าว

เนื่องจากเรากำลังทำงานร่วมกับบริษัทยา 30 แห่ง เราจะสร้างเมทริกซ์แผนที่ความหนาแน่นที่ประกอบด้วย 6 แถวและ 5 คอลัมน์ นอกจากนี้ เราต้องการให้แผนที่ความหนาแน่นแสดงเปอร์เซ็นต์การเปลี่ยนแปลงราคาในลำดับจากมากไปน้อย ดังนั้น เราจะจัดเรียงสต็อคในไฟล์ CSV ตามลำดับจากมากไปน้อย และเพิ่มคอลัมน์อีกสองคอลัมน์เพื่อระบุตำแหน่งของแต่ละสต็อคบนแกน X และ Y ของแผนที่ความหนาแน่นที่เกิดในทะเล

ขั้นตอนที่ 1: นำเข้าแพ็คเกจ Python

แหล่งที่มา

ขั้นตอนที่ 2: กำลังโหลดชุดข้อมูล

ชุดข้อมูลถูกอ่านโดยใช้ฟังก์ชัน read_csv จากแพนด้า นอกจากนี้ เราใช้คำสั่งพิมพ์เพื่อแสดงภาพ 10 แถวแรก

แหล่งที่มา

ขั้นตอนที่ 3: การสร้างอาร์เรย์ Python Numpy

โดยคำนึงถึงเมทริกซ์ขนาด 6 x 5 เราจะสร้างอาร์เรย์ n มิติสำหรับคอลัมน์ "สัญลักษณ์" และ "เปลี่ยน"

แหล่งที่มา

ขั้นตอนที่ 4: การสร้างเดือยใน Python

จาก data frame object ที่กำหนด "df" ฟังก์ชัน pivot จะสร้างตารางที่ได้รับใหม่ ฟังก์ชัน pivot รับอาร์กิวเมนต์สามตัว ได้แก่ ดัชนี คอลัมน์ และค่า ค่าของเซลล์ของตารางใหม่นำมาจากคอลัมน์ "เปลี่ยน"

แหล่งที่มา

ขั้นตอนที่ 5: การสร้างอาร์เรย์เพื่อใส่คำอธิบายประกอบในแผนที่ความหนาแน่น

ขั้นตอนต่อไปคือการสร้างอาร์เรย์สำหรับใส่คำอธิบายประกอบแผนที่ความร้อนที่เกิดในท้องทะเล สำหรับสิ่งนี้ เราจะเรียกเมธอด flatten ในอาร์เรย์ "percentage" และ "symbol" เพื่อทำให้รายการ Python เรียบขึ้นในหนึ่งบรรทัด นอกจากนี้ ฟังก์ชัน zip ยังซิปรายการใน Python เราจะเรียกใช้ Python for loop และใช้ฟังก์ชันการจัดรูปแบบเพื่อจัดรูปแบบสัญลักษณ์หุ้นและค่าเปอร์เซ็นต์การเปลี่ยนแปลงราคาตามความจำเป็น

แหล่งที่มา

ขั้นตอนที่ 6: การสร้างฟิกเกอร์ matplotlib และกำหนดพล็อต

ในขั้นตอนนี้ เราจะสร้างแผนภาพ matplotlib ที่ว่างเปล่าและกำหนดขนาดของรูป นอกจากนี้ เราจะเพิ่มชื่อเรื่องของโครงเรื่อง กำหนดขนาดแบบอักษรของชื่อเรื่อง และแก้ไขระยะห่างจากโครงเรื่องโดยใช้วิธี set_position สุดท้าย เนื่องจากเราต้องการแสดงเฉพาะสัญลักษณ์หุ้นและการเปลี่ยนแปลงราคาร้อยละวันที่สอดคล้องกัน เราจะซ่อนเครื่องหมายสำหรับแกน X และ Y และลบแกนออกจากพล็อต

แหล่งที่มา

ขั้นตอนที่ 7: การสร้างแผนที่ความหนาแน่น

ในขั้นตอนสุดท้าย เราจะใช้ฟังก์ชันแผนที่ความหนาแน่นจากแพ็คเกจ Python ของ Seaborn เพื่อสร้างแผนที่ความหนาแน่น ฟังก์ชันแผนที่ความร้อนของแพ็คเกจ Seaborn Python ใช้ ชุดอาร์กิวเมนต์ต่อไปนี้:

  • ข้อมูล :

เป็นชุดข้อมูลสองมิติที่สามารถบังคับเป็นอาร์เรย์ได้ ด้วย Pandas DataFrame แถวและคอลัมน์จะถูกติดป้ายกำกับโดยใช้ข้อมูลดัชนี/คอลัมน์

  • หมายเหตุ :

เป็นอาร์เรย์ที่มีรูปร่างเหมือนกันกับข้อมูลและใส่คำอธิบายประกอบในแผนที่ความหนาแน่น

  • cmap:

เป็นวัตถุ matplotlib หรือชื่อแผนที่สีและจับคู่ค่าข้อมูลกับพื้นที่สี

  • เอฟเอ็ม :

เป็นโค้ดการจัดรูปแบบสตริงที่ใช้เมื่อเพิ่มคำอธิบายประกอบ

  • ความกว้างของเส้น:

กำหนดความกว้างของเส้นที่แบ่งแต่ละเซลล์

แหล่งที่มา

ผลลัพธ์สุดท้ายของแผนที่ความร้อนที่เกิดจากทะเลสำหรับบริษัทยาที่เลือกจะมีลักษณะดังนี้:

แหล่งที่มา

ก้าวไปข้างหน้า: เรียนรู้ Python ด้วยโปรแกรมใบรับรองระดับมืออาชีพของ upGrad ในด้านวิทยาศาสตร์ข้อมูล

หลักสูตร ประกาศนียบัตรวิชาชีพด้านวิทยาศาสตร์ข้อมูลเพื่อการตัดสินใจทางธุรกิจ เป็นโปรแกรมออนไลน์ 8 เดือนที่เข้มงวด โดยเน้นที่แนวคิดด้านวิทยาศาสตร์ข้อมูลและการเรียนรู้ของเครื่อง โดยเน้นเฉพาะการใช้งานทางธุรกิจในโลกแห่งความเป็นจริง โปรแกรมนี้ได้รับการออกแบบอย่างมีหมวดหมู่สำหรับผู้จัดการและมืออาชีพด้านการทำงานที่ต้องการพัฒนาความรู้และทักษะเชิงปฏิบัติของวิทยาศาสตร์ข้อมูล ที่จะช่วยให้พวกเขาตัดสินใจทางธุรกิจเชิงกลยุทธ์และขับเคลื่อนด้วยข้อมูล

นี่คือไฮไลท์บางส่วนของหลักสูตร:

  • การยอมรับอันทรงเกียรติจาก IIM Kozhikode
  • เนื้อหามากกว่า 200 ชั่วโมง
  • 3 โครงการอุตสาหกรรมและหลักสำคัญ
  • 20+ เซสชั่นการเรียนรู้สด
  • 5+ เซสชั่นการฝึกสอนโดยผู้เชี่ยวชาญ
  • ความครอบคลุมของ Excel, Tableau, Python, R และ Power BI
  • ตัวต่อตัวกับที่ปรึกษาในอุตสาหกรรม
  • การสนับสนุนอาชีพ 360 องศา
  • ความช่วยเหลือด้านงานกับบริษัทชั้นนำ

ลงทะเบียนกับ upGrad และฝึกฝนทักษะ Python heatmap ของคุณสำหรับทุกความต้องการในการสร้างภาพข้อมูลของคุณ!

บทสรุป

นักสถิติและนักวิเคราะห์ข้อมูลใช้เครื่องมือและเทคนิคมากมายในการจัดเรียงข้อมูลที่จัดเรียงและนำเสนอในลักษณะที่เข้าใจง่ายและเป็นมิตรกับผู้ใช้ ในแง่นี้ แผนที่ความหนาแน่นเป็นเทคนิคการสร้างภาพข้อมูลช่วยให้ธุรกิจในทุกภาคส่วนสามารถเห็นภาพและทำความเข้าใจข้อมูลได้ดีขึ้น

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

คุณจะพล็อตแผนที่ความร้อนได้อย่างไร?

แผนที่ความหนาแน่นเป็นวิธีมาตรฐานในการวางแผนข้อมูลที่จัดกลุ่มไว้ในรูปแบบกราฟิกสองมิติ แนวคิดพื้นฐานเบื้องหลังการวางแผนแผนที่ความหนาแน่นคือ กราฟแบ่งออกเป็นสี่เหลี่ยมจัตุรัสหรือสี่เหลี่ยม โดยแต่ละอันจะเป็นตัวแทนของเซลล์หนึ่งเซลล์ในตารางข้อมูล ชุดข้อมูลหนึ่งชุด และหนึ่งแถว สี่เหลี่ยมจัตุรัสหรือสี่เหลี่ยมผืนผ้ามีรหัสสีตามค่าของเซลล์นั้นในตาราง

แผนที่ความหนาแน่นแสดงความสัมพันธ์หรือไม่?

แผนที่ความหนาแน่นสหสัมพันธ์คือการแสดงกราฟิกของเมทริกซ์สหสัมพันธ์ที่แสดงความสัมพันธ์ระหว่างตัวแปรต่างๆ แผนที่ความหนาแน่นสหสัมพันธ์จะมีประสิทธิภาพมาก หากใช้อย่างเหมาะสม เนื่องจากสามารถระบุตัวแปรที่มีความสัมพันธ์สูงได้อย่างง่ายดาย

เหตุใดจึงใช้ seaborn ใน Python

Seaborn เป็นไลบรารี Python โอเพ่นซอร์สที่ใช้ matplotlib มันถูกใช้สำหรับการวิเคราะห์ข้อมูลเชิงสำรวจและการแสดงภาพ และทำงานกับ data frames และไลบรารี Pandas ได้อย่างง่ายดาย นอกจากนี้ กราฟที่สร้างโดยใช้ Seaborn ยังปรับแต่งได้ง่ายอีกด้วย