Hướng dẫn how do you plot a 2d heatmap in python? - làm thế nào để bạn vẽ bản đồ nhiệt 2d trong python?

Đây là cách làm từ CSV:

import numpy as np
import matplotlib.pyplot as plt
from scipy.interpolate import griddata

# Load data from CSV
dat = np.genfromtxt['dat.xyz', delimiter=' ',skip_header=0]
X_dat = dat[:,0]
Y_dat = dat[:,1]
Z_dat = dat[:,2]

# Convert from pandas dataframes to numpy arrays
X, Y, Z, = np.array[[]], np.array[[]], np.array[[]]
for i in range[len[X_dat]]:
        X = np.append[X, X_dat[i]]
        Y = np.append[Y, Y_dat[i]]
        Z = np.append[Z, Z_dat[i]]

# create x-y points to be used in heatmap
xi = np.linspace[X.min[], X.max[], 1000]
yi = np.linspace[Y.min[], Y.max[], 1000]

# Interpolate for plotting
zi = griddata[[X, Y], Z, [xi[None,:], yi[:,None]], method='cubic']

# I control the range of my colorbar by removing data 
# outside of my range of interest
zmin = 3
zmax = 12
zi[[zizmax]] = None

# Create the contour plot
CS = plt.contourf[xi, yi, zi, 15, cmap=plt.cm.rainbow,
                  vmax=zmax, vmin=zmin]
plt.colorbar[]  
plt.show[]

dat.xyz ở dạng ở đâu

x1 y1 z1
x2 y2 z2
...

Một bản đồ nhiệt 2 chiều là một công cụ trực quan hóa dữ liệu giúp thể hiện độ lớn của hiện tượng dưới dạng màu sắc. Trong Python, chúng ta có thể vẽ đồ thị nhiệt 2 chiều bằng gói matplotlib. Có nhiều phương pháp khác nhau để vẽ các bản đồ nhiệt 2 chiều, một số trong số chúng được thảo luận dưới đây. & NBSP;

Phương pháp 1: Sử dụng hàm matplotlib.pyplot.imshow []

Cú pháp: matplotlib.pyplot.imshow [x, cmap = none, Norm = none, aspect = none, nội suy = none, alpha = none, vmin = none = 1, FilterRad = 4.0, imlim =, respample = none, url = none, \*, data = none, \*\*kwargs] & nbsp;: matplotlib.pyplot.imshow[X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None,
vmax=None, origin=None, extent=None, shape=, filternorm=1, filterrad=4.0,
imlim=, resample=None, url=None, \*, data=None, \*\*kwargs]
 

Python3

import numpy as np

import matplotlib.pyplot as plt

data = np.random.random[[

x1 y1 z1
x2 y2 z2
...
0
x1 y1 z1
x2 y2 z2
...
1
x1 y1 z1
x2 y2 z2
...
0
x1 y1 z1
x2 y2 z2
...
3

x1 y1 z1
x2 y2 z2
...
4=
x1 y1 z1
x2 y2 z2
...
6
x1 y1 z1
x2 y2 z2
...
7=
x1 y1 z1
x2 y2 z2
...
9 dat.xyz0

dat.xyz1dat.xyz2 dat.xyz0

dat.xyz4

Output:

Phương pháp 2: Sử dụng thư viện Seaborn

Đối với điều này, chúng tôi sử dụng chức năng Seaborn.HeatMap [] seaborn.heatmap[] function

Cú pháp: Seaborn.HeatMap [dữ liệu, *, vmin = none, vmax = none, cmap = none, centre = none, mạnh mẽ = false, annot = none, fmt = '. = 'White', cbar = true, cbar_kws = none, cbar_ax = none, square = false, xticklabels = 'auto', yticklabels = 'auto', mask = none, ax = none, ** kwargs] & nbsp;: seaborn.heatmap[data, *, vmin=None, vmax=None, cmap=None, center=None, robust=False,annot=None,
fmt=’.2g’, annot_kws=None, linewidths=0, linecolor=’white’, cbar=True, cbar_kws=None, cbar_ax=None,
square=False, xticklabels=’auto’, yticklabels=’auto’, mask=None, ax=None, **kwargs]
 

Python3

import numpy as np

import matplotlib.pyplot as plt

data = np.random.random[[

x1 y1 z1
x2 y2 z2
...
0
x1 y1 z1
x2 y2 z2
...
1
x1 y1 z1
x2 y2 z2
...
0
x1 y1 z1
x2 y2 z2
...
3

x1 y1 z1
x2 y2 z2
...
4=
x1 y1 z1
x2 y2 z2
...
6
x1 y1 z1
x2 y2 z2
...
7=
x1 y1 z1
x2 y2 z2
...
9 dat.xyz0

dat.xyz1dat.xyz2 dat.xyz0

dat.xyz1dat.xyz2 dat.xyz0

dat.xyz4

Output:

Phương pháp 2: Sử dụng thư viện Seaborn

Đối với điều này, chúng tôi sử dụng chức năng Seaborn.HeatMap []: matplotlib.pyplot.pcolormesh[*args, alpha=None, norm=None, cmap=None, vmin=None, vmax=None, 
shading=’flat’, antialiased=False, data=None, **kwargs]
 

Python3

import matplotlib.pyplot as plt

import numpy as np

import5= import3import8

x1 y1 z1
x2 y2 z2
...
1import8 dat.xyz0

matplotlib.pyplot as plt2= matplotlib.pyplot as plt4 dat.xyz0

dat.xyz1matplotlib.pyplot as plt7 dat.xyz0

dat.xyz4

Output:


Bạn có thể vẽ một mảng 2D trong Python không?

Sử dụng phương thức Scatter [] để vẽ mảng 2D numpy, tức là dữ liệu.Để hiển thị hình, sử dụng phương thức show []., i.e., data. To display the figure, use show[] method.

Matplotlib có bản đồ nhiệt không?

Điều này thường được gọi là một bản đồ nhiệt.Nếu dữ liệu là phân loại, đây sẽ được gọi là bản đồ nhiệt phân loại.Chức năng imshow của Matplotlib làm cho việc sản xuất các lô như vậy đặc biệt dễ dàng.Các ví dụ sau đây cho thấy làm thế nào để tạo ra một bản đồ nhiệt với các chú thích.Matplotlib's imshow function makes production of such plots particularly easy. The following examples show how to create a heatmap with annotations.

Chức năng nào trong Seaborn cho phép bạn vẽ bản đồ nhiệt?

Seaborn là một thư viện Python cho phép tạo ra các biểu đồ tốt hơn dễ dàng nhờ vào chức năng nhiệt [] của nó.

Bài Viết Liên Quan

Chủ Đề