For loop for different step size

7 次查看(过去 30 天)
Dear Matlab Community,
I have a matrix like
[24 80; 24 80; 24 80; 24 80; 30 120; 30 120; 48 124; 48 124; 48 124]
I need to have a plot that 80, 120, 124 be in the x axis and the numbers 4,2,3 be in the y axis.
We have 4 of 24, 3 of 30 and 3 of 48.
Thanks :)))

采纳的回答

Voss
Voss 2024-10-3
M = [24 80; 24 80; 24 80; 24 80; 30 120; 30 120; 48 124; 48 124; 48 124];
[c,g] = groupcounts(M(:,2))
c = 3×1
4 2 3
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
g = 3×1
80 120 124
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
There are your y- and x-axis numbers.
Perhaps one of these plots is what you mean:
x = 1:numel(g);
figure('Position',[10 10 1000 400])
tiledlayout(2,2)
nexttile
plot(g,c)
nexttile
bar(g,c)
nexttile
plot(x,c)
xticks(x)
xticklabels(g)
nexttile
bar(x,c)
xticks(x)
xticklabels(g)
  4 个评论

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Graphics Performance 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by