How to plot MESH only in black?

Can the 'mesh' plot be in a single color, say black, and not in color map?
Thanks.

回答 (5 件)

Kelly Kearney
Kelly Kearney 2014 年 6 月 3 日

8 投票

mesh(x,y,z, 'edgecolor', 'k')
José-Luis
José-Luis 2014 年 6 月 3 日
編集済み: José-Luis 2014 年 6 月 3 日

1 投票

You could set the colormap to black only, and use surf instead.
[x,y] = meshgrid([-2:.2:2]);
Z = x.*exp(-x.^2-y.^2);
surf(x,y,Z)
colormap([0 0 0])

1 件のコメント

José-Luis
José-Luis 2014 年 6 月 6 日
編集済み: José-Luis 2014 年 6 月 6 日
%Alternative 1
figure(1)
plot3(x,y,Z,'k-');
%Alternative 2
figure(2)
plot3(x',y',Z','k-');
Please accept an answer if it helped you.

サインインしてコメントする。

John
John 2014 年 6 月 3 日

0 投票

'edgecolor' isn't a good way. It plots the "baseline" and appears very messy.

1 件のコメント

Kelly Kearney
Kelly Kearney 2014 年 6 月 3 日
What do you mean? A mesh plot doesn't have a "baseline"... perhaps you're seeing an artifact of your data? Can you give an example, or post a screenshot of your plot?

サインインしてコメントする。

John
John 2014 年 6 月 6 日

0 投票

Unless using 'shading interp', both mesh and surf will plot the line linking 2 lines which is not desirable.
[x,y] = meshgrid([-2:.2:2]);
Z = x.*exp(-x.^2-y.^2);
surf(x,y,Z) or mesh(x,y,Z)
colormap([0 0 0]) % with or without this, crossing lines are plot;
shading interp; % only with this the crossing lines are cleared.
% but we only want the curve lines, not the crossing lines, not shading either.

2 件のコメント

José-Luis
José-Luis 2014 年 6 月 6 日
curve lines? crossing lines? It would help a lot if you showed an example of what you want to achieve.
José-Luis
José-Luis 2014 年 6 月 6 日
I tried to interpret what you mean. Please see comment to my original answer.

サインインしてコメントする。

Bjørn Kvamme
Bjørn Kvamme 2020 年 3 月 23 日

0 投票

I wanted to get this plot in shades of grey/black instead of colours but meshc does not accept "edgecolour"
load CH4_expT4
x3=CH4_expT4(:,1)
y3=CH4_expT4(:,3)
z3=CH4_expT4(:,2)
xv = linspace(min(x3), max(x3), 1000);
yv = linspace(min(y3), max(y3), 1000);
[X,Y] = meshgrid(xv, yv);
Z = griddata(x3, y3, z3, X, Y);
meshc(X,Y,Z,'edgecolor','k')
grid on
ylabel('Temperature (K)')
zlabel('Pressure (Bars)')
xlabel('time (hours)')

カテゴリ

タグ

質問済み:

2014 年 6 月 3 日

回答済み:

2020 年 3 月 23 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by