Python:(Seaborn?)来自不规则网格的热图

Python:(Seaborn?)来自不规则网格的热图,python,pandas,matplotlib,seaborn,Python,Pandas,Matplotlib,Seaborn,假设我有两个给定的网格(例如,测量数据): 网格_1的范围为x=(-10…10);y=(-10…10)步长为1 网格2的范围为x=(-30…-10)和x=(10…30); y=(-30…-10)&y=(10…30)步长为5,因此它有一个 网格的大小为1 我还为两个网格的每对xi,yi提供了z值('dose') 两个数据集都以表格的形式呈现,有三列x,y,dose 我尝试使用seaborn的heatmap()函数绘制此数据的热图表示: dm1 = df1.pivot('y', 'x', 'do

假设我有两个给定的网格(例如,测量数据):

  • 网格_1的范围为
    x=(-10…10);y=(-10…10)
    步长为1
  • 网格2的范围为
    x=(-30…-10)和x=(10…30);
    y=(-30…-10)&y=(10…30)
    步长为5,因此它有一个 网格的大小为1
  • 我还为两个网格的每对
    xi,yi
    提供了z值(
    'dose'
    ) 两个数据集都以表格的形式呈现,有三列
    x,y,dose
我尝试使用seaborn的heatmap()函数绘制此数据的热图表示:

dm1 = df1.pivot('y', 'x', 'dose')
opts = {'cmap': 'YlGnBu_r'}
ax = sns.heatmap(dm1, **opts)
ax.invert_yaxis()
plt.savefig('dosemap-test-smooth.pdf')

绘制两个相互独立的网格效果很好,但将它们绘制在一起会破坏热图的组合(?)。 所以我的问题是:如何使用python绘制这种“不规则”分布数据的热图(-like)表示法


提前感谢您的帮助

您能提供示例数据吗?我想我会研究scipy插值工具,它可以帮助您将数据集重新采样到同一个网格上。@IanS:可以在[此处](mz02D)和中找到两个数据样本@mwaskom:你能告诉我我可以使用哪些
scipy.interp
工具来实现这一点吗?因为我在使用
interp2d()和`griddata()时遇到了一些问题
dm2 = df2.pivot('y', 'x', 'dose')
ax = sns.heatmap(dm2, **opts)
ax.invert_yaxis()
plt.savefig('dosemap-test-coarse.pdf')
df = df1.append(df2)
dm = df.pivot('y', 'x', 'dose')
ax = sns.heatmap(dm2, **opts)
ax.invert_yaxis()
plt.savefig('dosemap-test-total.pdf')