matplotlib 向tricontourf添加文本

x3naxklr  于 2023-04-12  发布在  其他
关注(0)|答案(1)|浏览(94)

我需要添加一个文本标题到我使用tricontoruf使用以下代码制作的图中:

import matplotlib.pyplot as plt
from matplotlib import cm
import pandas as pd

dx = {'1': 1, '2': -1, '3': -1, '4': 1, '5': 0}
x = pd.Series(data=dx, index=['1', '2', '3', '4', '5'])

dy = {'1': 1, '2': 1, '3': -1, '4': -1, '5': 0}
y = pd.Series(data=dy, index=['1', '2', '3', '4', '5'])

dT = {'1': 10, '2': 20, '3': 30, '4': 40, '5': 50}
T = pd.Series(data=dT, index=['1', '2', '3', '4', '5'])

plt.figure(figsize=(10,8))
CS=plt.tricontourf(x, y, T, cmap=cm.turbo, extend='neither', levels=np.arange(0,101,5))

plt.colorbar(CS)

plt.show()

我想加一个类似text(1, 1, "my text", fontsize=12)的东西。有人能帮帮我吗?

8ljdwjyq

8ljdwjyq1#

我将使用OOP方法,然后调用Axes.text
Axes.text(x,y,s,fontdict=None,**kwargs)

将文本s添加到数据坐标中位置x,y处的轴。

  • Source*:[matplotlib]
fig, ax = plt.subplots(figsize=(10, 8))

CS = ax.tricontourf(x, y, T, cmap=cm.turbo, extend='neither', levels=np.arange(0, 101, 5))

fig.colorbar(CS), ax.set_aspect('equal')

ax.text(0.5, 0.5, # X & Y coordinates
        s='StackOverflow', # <-- put your text here
        fontsize=12, # adjust the fontsize
        ha='center', transform=ax.transAxes)

plt.show()

相关问题