我正在使用Matplotlib创建等高线图。我有一个多维数组包含所有数据。它的长度为12,宽度约为2000。因此,它基本上是一个由12个列表组成的列表,每个列表长度为2000。我的等高线图已经可以工作了,但我需要平滑数据。我已经阅读了很多示例,但不幸的是,我没有数学背景理解这些内容。
那么,我该如何平滑这些数据呢?我有一个示例展示了我的图形样子和我想要的样子。这是我的图形:
我希望它更像这样:
我有什么方法可以使等高线图平滑,就像第二个图形一样吗?
我使用的数据来自XML文件。但是,我将展示数组的部分输出。由于数组中的每个元素大约有2000个项目,因此我只会展示摘录。
那么,我该如何平滑这些数据呢?我有一个示例展示了我的图形样子和我想要的样子。这是我的图形:
![graph illustration](https://istack.dev59.com/7FNwY.webp)
![my goal](https://istack.dev59.com/kq2wl.webp)
我使用的数据来自XML文件。但是,我将展示数组的部分输出。由于数组中的每个元素大约有2000个项目,因此我只会展示摘录。
[27.899999999999999, 27.899999999999999, 27.899999999999999, 27.899999999999999,
28.0, 27.899999999999999, 27.899999999999999, 28.100000000000001, 28.100000000000001,
28.100000000000001, 28.100000000000001, 28.100000000000001, 28.100000000000001,
28.100000000000001, 28.100000000000001, 28.0, 28.100000000000001, 28.100000000000001,
28.0, 28.100000000000001, 28.100000000000001, 28.100000000000001, 28.100000000000001,
28.100000000000001, 28.100000000000001, 28.100000000000001, 28.100000000000001,
28.100000000000001, 28.100000000000001, 28.100000000000001, 28.100000000000001,
28.100000000000001, 28.100000000000001, 28.100000000000001, 28.100000000000001,
28.100000000000001, 28.100000000000001, 28.0, 27.899999999999999, 28.0,
27.899999999999999, 27.800000000000001, 27.899999999999999, 27.800000000000001,
27.800000000000001, 27.800000000000001, 27.899999999999999, 27.899999999999999, 28.0,
27.800000000000001, 27.800000000000001, 27.800000000000001, 27.899999999999999,
27.899999999999999, 27.899999999999999, 27.899999999999999, 28.0, 28.0, 28.0, 28.0,
28.0, 28.0, 28.0, 28.0, 27.899999999999999, 28.0, 28.0, 28.0, 28.0, 28.0,
28.100000000000001, 28.0, 28.0, 28.100000000000001, 28.199999999999999,
28.300000000000001, 28.300000000000001, 28.300000000000001, 28.300000000000001,
28.300000000000001, 28.399999999999999, 28.300000000000001, 28.300000000000001,
28.300000000000001, 28.300000000000001, 28.300000000000001, 28.300000000000001,
28.399999999999999, 28.399999999999999, 28.399999999999999, 28.399999999999999,
28.399999999999999, 28.300000000000001, 28.399999999999999, 28.5, 28.399999999999999,
28.399999999999999, 28.399999999999999, 28.399999999999999]
请注意,这只是一个摘录。数据的维度为12行1959列。列数会根据从XML文件导入的数据而变化。我可以在使用高斯滤波器后查看值,它们确实会改变。但是,这些更改不足以影响等值线图。
ndimage.gaussian_filter(Z.tolist())
)是有效的。问题必须在其他地方。没有看到数据很难说。不起作用是什么意思?是否会引发异常?还是结果看起来不对? - unutbu