matplotlib pcolormesh创建数据构件

2024-04-20 10:31:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用matplotlib函数pcolormeshimshow绘制数据,当我使用pcolormesh时,它会产生一些伪影,似乎会滑动一些数据:

pcolormesh

imshow没有:

enter image description here

我能够给出一个具有相同人工制品的例子

import numpy as np
import pandas as pd

data = pd.DataFrame({'x':np.random.normal(loc=0.5, size=5000)
                     , 'y':np.random.normal(loc=0.5, size=5000)
                     , 'z':np.random.normal(loc=0.5, size=5000)})

data_pivot = data.pivot(index='x', columns='y', values='z')
x = data_pivot.index.values
y = data_pivot.columns.values
z = data_pivot.values
masked_data = np.ma.masked_invalid(z)

从而得出如下图:

^{pr2}$

enter image description here

这些文物是从哪里来的?据我所知,这些数据没有任何问题,因为原始数据和合成数据产生的结果是相同的。在


Tags: 数据importdatasizeindexasnprandom
1条回答
网友
1楼 · 发布于 2024-04-20 10:31:08

答案是,我的数据格式不正确。pcolormesh要求输入数组具有正确的列数和行数,即使这些列和行都是nan。因此,当它在数据中发现一个“空白”时,它会用最后一个已知的值来填充它。工件不是工件,而是数据中的缺口。在我最初的例子中,我假设imshow是正确的,而实际上它并没有解释这些差距。在

相关问题 更多 >