zoukankan      html  css  js  c++  java
  • matlab pareto

    有一个向量是13*1的,想用matlab 中的pareto画图,但是出现的结果老师在横坐标只显示1-10,怎么才显示到13

    原文: http://zhidao.baidu.com/question/268161878.html

    向量是:
    
    40.749
    18.97
    8.5617
    7.4267
    5.5653
    4.6588
    3.6639
    2.4088
    2.2744
    2.251
    1.3813
    1.2732
    0.8151
    自己画的图是: 怎么才能在横轴1-13显示呢??


    最佳答案 pareto 在横轴上最多可以显示10标注,默认情况下,10以后的被忽略,可以扩展x轴让其显示出来,但是,被扩展的部分不会被标注,所以,可以让1-13的条形都显示出来,但是标注最多只能到10,后面的11,12,13都不会被标注 扩展x轴的方法 axis([1 13 0 100])或者 xlim([1 13]);

    追问

    有其他的办法将11,12等标出来吗??谢谢

    回答

    pareto函数做不到,如果你非要将11,12,13 标出来,可以用 bar 函数,但是这个函数不会画出上面的那个累加曲线,需要你自己来画,方法如下
    y=[40.749 18.97 8.5617 7.4267 5.5653 4.6588 3.6639 2.4088 2.2744 2.251 1.3813 1.2732 0.8151];
    x=1:13;
    kk(1)=y(1);
    for index=2:13
        kk(index)=kk(index-1)+y(index);
    end
    bar(y);
    hold on
    plot(x,kk);
    hold off
    这样就可以了
    不知道你要的是不是这个结果
  • 相关阅读:
    POJ2253 Frogger
    搜索专题(复习)
    机器学习资料整理
    51nod 1873 初中的算术
    Canny检测理解和Matlab实现
    Floyd+限制路径步数(快速幂优化)
    bitset优化背包问题
    Educational Codeforces Round 44 (Rated for Div. 2)
    BZOJ 3224 SBT 普通平衡树
    本科课程大数据基础
  • 原文地址:https://www.cnblogs.com/sunwufan/p/2157407.html
Copyright © 2011-2022 走看看