绘制直方图(更改轴)

例如matrixA有n×2matrix。第一列是一些索引,第二列是直方图。我只想将非零直方图可视化,所以我过滤了A并删除了直方图为零的索引。 我用

bar(A(:,1),A(:,2)) 

我没有使用excel。 我怎样才能在Excel中绘制?

这是我的数据(所以我只想显示这个matrix的元素,但是如图所示,它显示的所有索引从零到x轴结束,我只想显示非零值在x轴的索引)

  1 0.0573770000000000 2 0.622951000000000 3 0.0819672000000000 4 0.0491803000000000 5 0.0409836000000000 6 0.00819672000000000 7 0.00819672000000000 8 0.0163934000000000 10 0.00819672000000000 12 0.00819672000000000 14 0.00819672000000000 19 0.0163934000000000 34 0.00819672000000000 50 0.00819672000000000 54 0.00819672000000000 62 0.00819672000000000 175 0.00819672000000000 410 0.00819672000000000 1178 0.00819672000000000 1193 0.00819672000000000 1669 0.00819672000000000 

它有非常糟糕的visualisation.It可能在matlab或我应该使用其他软件? 我的资料

Roney的结果回答了我的数据。 (我想从我的数据下面的每个栏下的实际标签在X轴。)

Roney答案的结果

谢谢

如果你的意思是你想要显示的零值之间没有间隙的非零条,你可以执行以下操作:

 >> non_zero = A(:,2) ~= 0; >> bar(A(non_zero,2)) >> set(gca, 'XTick', 1:sum(non_zero)); %New code. >> set(gca, 'XTickLabel', num2str(A(non_zero,1))); 

对于说,

 >> A = [ 1 0.001 2 0.005 4 0 5 0.003 ]; 

由此产生的数字将是:

在这里输入图像说明

对于您的数据,结果将是:

在这里输入图像说明