问题标签 [contourf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
10057 浏览

python - Matplotlib 标准化颜色条(Python)

我正在尝试使用 matplotlib(当然还有 numpy)绘制轮廓图。它有效,它绘制了它应该绘制的内容,但不幸的是我无法设置颜色条范围。问题是我有很多地块并且需要它们都具有相同的颜色条(相同的最小值和最大值,相同的颜色)。我复制并粘贴了我在互联网上找到的几乎所有代码片段,但没有成功。到目前为止我的代码:

如您所见,颜色条规范有三种不同的行,它们都不起作用。范围仍然是自动设置的......我的意思是其他一切都在工作,为什么不是颜色条?我什至没有收到错误或警告。

谢谢,itpdg

编辑 1:图片,带有 plt.clim(-80,20):

在此处输入图像描述

0 投票
1 回答
281 浏览

matplotlib - Contour plot size and action

I am having a bit of trouble with my output of my code to produce a 2d contour plot. I show the result below. enter image description here

As may be seen, the y axis is greatly distorted, and yet my code seems to have nothing within it which should cause this. My code is shown below:

I would apprecaite assistance.

0 投票
0 回答
441 浏览

matlab - Matlab 未排序的数据点等高线图

我想绘制从程序中获得的一些数据的等高线图。

我得到三个矩阵: X , Y 和 Z

这些矩阵大小相等。矩阵 X 和 Y 不是使用 a 构造的meshgrid,通常是未排序的。

我的情节显示了一些我没想到的奇怪特征。因此,我认为 Matlab 无法使用未排序的网格点进行绘图。

如何绘制这些数据?或者我怎样才能对数据进行排序?

0 投票
1 回答
691 浏览

matlab - 在 MATLAB 中删除特定的等高线

我正在使用 contourf 从 3D 矩阵中绘制值,但我希望在我的图中不显示特定的轮廓。

以下是我用来绘制所述矩阵的代码。

0 投票
0 回答
46 浏览

matplotlib - 等高线图的模糊性

我使用contourf在python中生成了一个轮廓图像,如下所示。但是,图像质量存在问题,可以从覆盖几乎所有图像的白色线程中看出。有没有人知道为什么会发生这种情况以及如何解决它?

在此处输入图像描述

我用来生成此类图像的代码如下所示。请注意,由于初始的“for”循环,代码生成了四张图像,但是所有图像都在顶部显示了这种白色雾霾,因此我只显示了一张。我创建等高线图的部分在最后,所以只能看:

0 投票
2 回答
56 浏览

matlab - Matlab用contourf绘制具有指定条件的数据

我在嵌套 for 循环中生成的矩阵中有数据。我只想绘制满足特定条件的数据(例如,它必须大于0.6)。数据点是否满足该条件存储为我的矩阵10在我的mlist矩阵中。

在 Matlab 中绘制这个最简单的方法是什么?对于不满足条件的数据点,可以只是空白。

0 投票
1 回答
13833 浏览

python - contourf中cmap的含义

contourf关于绘图功能的使用,我有两个问题。我一直在寻找答案,但还没有找到。

  1. contourf函数中,有一个名为 的变量cmap。这是做什么用的,它的含义是什么?什么是cmap=cm.jet意思?

  2. 当将 x,y,z 放入contourf并创建一个颜色条时,我们如何获得设置颜色条限制的最小值和最大值?我现在是手动做的,但是有没有办法直接从contourf句柄中获取最小值和最大值?

0 投票
1 回答
5585 浏览

matlab - Matlab:如何在时装图上设置对数刻度

我有一些数据要显示为等值线图,其中包含值的对数刻度(矩阵Z)和标记的计数。我就是这样做的:

这是我的结果:

图片

我的问题是:如何在轮廓上获得正确的标签?我不想要这里描述的彩条。

编辑:这是我的例子:

我的真实数据如下所示: 真的

我可以设置我想要的任何计数线标签,但它们不会可见,因为我的数据是指数型的(顺便说一下,在这个图中可见的标签是真实的,我想在下一个情节)。

现在,由于我的数据是指数的,我必须在显示的值(矩阵 Z)上使用对数刻度来正确显示数据。这是我的做法(也许还有另一种更好的方法,我不知道,我还没有找到其他方法):

这是我的图片的样子: 日志数据

现在看起来不错——你可以看到我的数据是如何变化的。但是,标签是错误的。我现在可以将它们设置为您喜欢的任何向量:

  1. 0:5:45 - 我会得到我现在所拥有的。
  2. 10^[0:5:45](我想要这些标签)。但是现在我绘制的数据范围是(0, 45)(因为我计算了它的对数)。因此,大多数标签都不会显示(它们超出了数据范围),并且会放错位置的标签。

理想情况下,我希望能够做到这样的事情:

并在底部获取带有标签 10、10^5、10^10 等的图片。

总而言之,我需要执行以下操作之一:

  1. 找到一种以编程方式设置对数刻度的方法,让 matlab 担心等值线。

  2. 能够手动更改等值线上的标签而不移动它们(new_label = 10^old_label)。

0 投票
1 回答
4001 浏览

matlab - 如何在 Matlab 中绘制特定的等高线

考虑这个例子:

在此处输入图像描述

轮廓的值是自动确定的。如何绘制具有特定值(例如 [0.1,0.3,0.44,0.63,0.78,0.89])的特定等高线?

0 投票
1 回答
506 浏览

matlab - 将构成等高线图矩阵的数据点叠加在 MATLAB 中的同一图上

希望标题能充分描述我的问题。基本上,我使用 contourf (x,y,z) 函数在 MATLAB 中生成等高线图,其中 x 和 y 是不同长度的向量,z 是维度为 x 乘以 y 的数据矩阵。轮廓图很好,但是,我希望用矩阵 z 中的实际数据点覆盖这个图。我曾尝试使用 scatter 函数,但我收到一条错误消息,通知我 X 和 Y 必须是相同长度的向量 - 但事实并非如此。有没有其他方法可以实现这一目标?

提前感谢您的任何帮助/建议!