如何在 matplotlib 中创建径向热图?

sci*_*rer 3 python matplotlib heatmap

我能够像这样在 ggplot2 中获得径向热图在此处输入图片说明

如何使用 matplotlib 获得相同的结果?

这是一个示例 df 和可视化,而不是用于使用 ggplot2 创建径向热图的数据。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(np.random.uniform(-1, 1, (24,12)))
df.columns = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
sns.heatmap(df, cmap = "coolwarm", cbar = False)
Run Code Online (Sandbox Code Playgroud)

编辑:我的数据维度与我提供的示例 df 相同。我想绘制相同的图。

小智 6

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np

fig = plt.figure()
ax = Axes3D(fig)

n = 12
m = 24
rad = np.linspace(0, 10, m)
a = np.linspace(0, 2 * np.pi, n)
r, th = np.meshgrid(rad, a)

z = np.random.uniform(-1, 1, (n,m))
plt.subplot(projection="polar")

plt.pcolormesh(th, r, z, cmap = 'inferno')

plt.plot(a, r, ls='none', color = 'k') 
plt.grid()
plt.colorbar()
plt.savefig('a.png')
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明