如何计算并标记图表中的最高值?

时间:2016-09-27 08:53:56

标签: matlab diagram

更新我修改过的代码 - >标有错误的一点!看到颜色栏! :)

Input_Matrix = textread('Rainflow_Input1.txt')
[zeilen,spalten]=size(Input_Matrix)
x = Input_Matrix(:,1)
y = Input_Matrix(:,2)
z = Input_Matrix(:,3)
colorbar('location','Manual', 'position', [0.93 0.1 0.02 0.81]);

az = 0;
el = 90;
view(az, el);


%scatter3(x,y,z,'filled')%Problem i dont know to make it filled
view(0,90)% view from above !!!http://de.mathworks.com/help/matlab/ref/view.html
a = 30;%markersize
scatter3(x, y, z, a, z, 'filled');
view(0, 90)
idx = find(max(z)) ;
hold on
plot3(x(idx),y(idx),z(idx),'*r')
colorbar
datacursormode on

如何计算出图表中的最高值?我想在我的图表中标记它。因此,应从最高值 - >显示 x y z 值。的ž!谢谢你的帮助。我真的很感激。

Input_Matrix = textread('Rainflow_Input1.txt')
[zeilen,spalten]=size(Input_Matrix)
x = Input_Matrix(:,1)
y = Input_Matrix(:,2)
z = Input_Matrix(:,3)
colorbar('location','Manual', 'position', [0.93 0.1 0.02 0.81]);

az = 0;
el = 90;
view(az, el);


%scatter3(x,y,z,'filled')%Problem i dont know to make it filled
view(0,90)% view from above !!!http://de.mathworks.com/help/matlab/ref/view.html
a = 30;%markersize
scatter3(x, y, z, a, z, 'filled');
view(0, 90)
colorbar;
datacursormode on
;

我的意见:

-220.8  228 50045
-222    201.6   50045
-220.2  198 200176
-224.4  196.8   200176
-220.8  192 200176
-221.4  190.8   50044
-226.2  176.4   200176
-199.2  156 50044
-201.6  153.6   50045
-219    147.6   50044
-252.6  133.2   50044
-210    129.6   200176
-250.8  127.2   50044
-201    126 50044
-229.2  124.8   50044
-183    123.6   200176
-168    122.4   200176
-275.4  118.8   200176
-261    13.2    400352
-259.8  13.2    200176
-258.6  13.2    200176
-257.4  13.2    290176

1 个答案:

答案 0 :(得分:1)

您的数据的最大值(我假设z)在m

索引中为ind
[m,ind]=max(z);

如果您担心有多个,那么您可以随时

indexes=find(z==m);

要标记这些内容,请在致电scatter3之后执行hold on并使用最大值数据调用scatter3,以及另一种格式,例如'*'也许还有其他一些颜色