วิธีสร้าง heat maps ใน python อย่างง่ายดาย


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

 import numpy as np
import pandas as pd 
import seaborn as sns

#create a dataset
np.random.seed(0)
data = {'day': np.tile(['Mon', 'Tue', 'Wed', 'Thur', 'Fri'], 5),
        'week': np.repeat([1, 2, 3, 4, 5], 5),
        'sales': np.random.randint(0, 50, size=25)
        }

df = pd.DataFrame(data,columns=['day','week','sales'])
df = df.pivot('day', 'week', 'sales')

view first ten rows of dataset
df[:10]

week 1 2 3 4 5
day					
Fri 3 36 12 46 13
My 44 39 23 1 24
Thursday 3 21 24 23 25
Kills 47 9 6 38 17
Wed 0 19 24 39 37

สร้างแผนที่ความร้อนพื้นฐาน

เราสามารถสร้างแผนที่ความร้อนพื้นฐานได้โดยใช้ฟังก์ชัน ns.heatmap() :

 sns.heatmap(df) 

แผนที่ความร้อนใน Python

แถบสีทางด้านขวาจะแสดงคำอธิบายซึ่งระบุค่าที่แสดงโดยสีต่างๆ

เพิ่มบรรทัดลงในแผนที่ความร้อน

คุณสามารถเพิ่มเส้นระหว่างช่องสี่เหลี่ยมในแผนที่ความร้อนได้โดยใช้อาร์กิวเมนต์ linewidths :

 sns.heatmap(df, linewidths=.5) 

แผนที่ความร้อนของ Marine Python

เพิ่มคำอธิบายประกอบลงในแผนที่ความร้อน

คุณยังสามารถเพิ่มคำอธิบายประกอบลงในแผนที่ความร้อนได้โดยใช้อาร์กิวเมนต์ annot=True :

 sns.heatmap(df, linewidths=.5, annot=True) 

แผนที่ความร้อนที่มีคำอธิบายประกอบใน Python

ซ่อนแถบสีแผนที่ความร้อน

คุณยังสามารถซ่อนแถบสีทั้งหมดได้โดยใช้ตัวเลือก cbar=False :

 sns.heatmap(df, linewidths=.5, annot=True, cbar=False) 

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

เปลี่ยนธีมสีแผนที่ความร้อน

คุณยังสามารถเปลี่ยนธีมสีได้โดยใช้อาร์กิวเมนต์ cmap ตัวอย่างเช่น คุณสามารถตั้งค่าสีให้มีตั้งแต่สีเหลือง สีเขียว จนถึงสีน้ำเงิน:

 sns.heatmap(df, cmap='YlGnBu')

แผนที่ความร้อนหลาม

หรือคุณอาจให้สีเปลี่ยนจากสีแดงเป็นสีน้ำเงิน:

 sns.heatmap(df, cmap='RdBu') 

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

สำหรับรายการชุดสีทั้งหมด โปรดดู เอกสารประกอบของ matplotlib

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *