【问题标题】:How can I plot cumulative plots with specific x values?如何绘制具有特定 x 值的累积图?
【发布时间】:2020-01-16 02:48:41
【问题描述】:

我试图找出如何绘制具有特定 x 值的累积分布函数 (cdf),但没有成功。

例如,如果数据集是:

x = [2.50 5.21 7.67 8.43 9.15 11.47 14.59 21.45];
y = [0.20 0.09 0.15 0.13 0.17  0.04  0.7   0.15];  % (total 1)

当我使用y = cdfplot(x) 时,图形的形状肯定看起来不对。

我还用cumsum(y)x 绘制了图形以检查形状,它看起来不错,但我想知道是否有任何代码可以绘制累积分布图。

【问题讨论】:

    标签: matlab plot graph cdf


    【解决方案1】:

    stairs 函数用于创建“阶梯图”,这应该正是您想要的,并结合了您的 cumsum(y) 想法。

    请看下面的代码sn-p。我为某个间隔的开始和结束添加了两个额外的点,这里是[0 ... 25]。此外,y 中的值总和大于 1,因此我也修改了这些值。

    x = [0 2.50 5.21 7.67 8.43 9.15 11.47 14.59 21.45 25];
    y = [0 0.10 0.09 0.05 0.10 0.14  0.04  0.4   0.08  0];
    stairs(x, cumsum(y));
    xlim([-1 26]);
    ylim([-0.2 1.2]);
    

    这就是输出(Octave 5.1.0,但也使用 MATLAB Online 进行了测试):

    希望有帮助!

    【讨论】:

    • 非常感谢HansHirse!你的回答肯定有帮助!也感谢编辑我的原始问题。我希望你有一个美好的一天!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    • 2020-11-17
    • 2018-05-15
    • 1970-01-01
    相关资源
    最近更新 更多