Matlab 绘制数据为常量的线

Matlab 绘制数据为常量的线,matlab,plot,lines,Matlab,Plot,Lines,我在做一个流体力学项目,我不是Matlab绘图方面的专家。我想让你帮我做以下事情(我不确定我必须使用什么样的绘图功能以及如何使用)。你不需要知道任何流体力学来回答这个问题,但为了更好地理解,我会给你解释一下 我有一个数据数组,它表示管道内流体的流函数(psi)的值。每个节点都是风管中的一个点。我们知道,如果我们画一条线,沿着特定的(恒定的)psi值,就会有一条流线。我想绘制这些流线,而不使用函数streamline,只使用普通绘图和我的数据 我的矩阵是: data = ( 10 10 10 10

我在做一个流体力学项目,我不是Matlab绘图方面的专家。我想让你帮我做以下事情(我不确定我必须使用什么样的绘图功能以及如何使用)。你不需要知道任何流体力学来回答这个问题,但为了更好地理解,我会给你解释一下

我有一个数据数组,它表示管道内流体的流函数(psi)的值。每个节点都是风管中的一个点。我们知道,如果我们画一条线,沿着特定的(恒定的)psi值,就会有一条流线。我想绘制这些流线,而不使用函数
streamline
,只使用普通绘图和我的数据

我的矩阵是:

data = ( 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 ; 
8.00 8.02 8.04 8.07 8.12 8.20 8.30 8.42 8.53 8.63 8.72 8.80 8.86 8.91 8.96 9.00;
6.00 6.03 6.07 6.12 6.22 6.37 6.59 6.83 7.07 7.28 7.45 7.60 7.72 7.83 7.92 8.00;
4.00 4.03 4.07 4.14 4.26 4.48 4.85 5.26 5.63 5.95 6.21 6.43 6.61 6.75 6.88 7.00;
2.00 2.02 2.05 2.10 2.20 2.44 3.08 3.70 4.23 4.67 5.01 5.29 5.52 5.70 5.86 6.00;
0 0 0 0 0 0 1.33 2.24 2.93 3.47 3.88 4.21 4.46 4.67 4.84 5.00;
0 0 0 0 0 0 0 1.01 1.78 2.38 2.84 3.19 3.46 3.67 3.84 4.00;
0 0 0 0 0 0 0 0 0.80 1.43 1.91 2.25 2.51 2.70 2.86 3.00;
0 0 0 0 0 0 0 0 0 0.63 1.10 1.41 1.62 1.77 1.89 2.00;
0 0 0 0 0 0 0 0 0 0 0.44 0.66 0.79 0.88 0.94 1.00;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
有零的地方是因为有墙

我想做的是在以下情况下绘制流线: psi=10,psi=8,psi=6,psi=4,psi=2

例如,第一条流线(psi=10)将是一条水平方向的直线,其值为10。第二个会有点弯曲(因为它必须跟随它的值为8的每个点,依此类推)

你们能帮我写代码吗?我在Matlab上的绘图有点乱。 事先谢谢你

附言:为了得到一个想法,这是一种绘图(使用我的数据,应该几乎相同)!
像这样的东西适合你吗

2:2:10
设置要显示的级别。如果您想更好地查看10值级别,可以使用
功能播放一段时间

subplot(121)
contour(data,2:2:10,'ShowText','on')
subplot(122)
contourf(data,2:2:10,'ShowText','on')


如果你想让绘图颠倒,你可以做
等高线(flipud(数据))

哇,是的,我添加了
数据=数据(结束:-1:1,:)
将其倒置。但是,您是如何获得第二个绘图的?我只想要那一个,但是如果代码相同,您是如何用颜色填充它的?@user3780731哦,我有一个打字错误!函数是正确的!非常感谢您的帮助。答案非常完美。@user3780731接受它,这样未来的流体动力学引擎EER可以知道答案;)