回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>这是热图的代码。我想知道我是否可以把数字1,2,3,4改成字母,比如A,B,C,D,它们在每个正方形下面。你知道吗</p>
<pre><code>'''
Most heatmap tutorials I found online use pyplot.pcolormesh with random sets of
data from Numpy; I just needed to plot x, y, z values stored in lists--without
all the Numpy mumbo jumbo. Here I have code to plot intensity on a 2D array, and
I only use Numpy where I need to (pcolormesh expects Numpy arrays as inputs).
'''
import matplotlib.pyplot as plt
import numpy as np
#here's our data to plot, all normal Python lists
x = [0, 1, 2, 3, 4,5]
y = [0, 1, 2, 3, 4,5]
intensity = [
[5, 10, 15, 20, 25,3],
[30, 35, 40, 45, 50,23],
[55, 60, 65, 70, 75,34],
[80, 85, 90, 95, 100,24],
[105, 110, 115, 120, 125,23],
[105, 110, 115, 120, 125,23]
]
#setup the 2D grid with Numpy
x, y = np.meshgrid(x, y)
#convert intensity (list of lists) to a numpy array for plotting
intensity = np.array(intensity)
#now just plug the data into pcolormesh, it's that easy!
plt.pcolormesh(x, y, intensity)
plt.colorbar() #need a colorbar to show the intensity scale
plt.show() #boom
</code></pre>