【问题标题】:Matlab - Extract values from boxplotMatlab - 从箱线图中提取值
【发布时间】:2012-03-16 07:00:57
【问题描述】:

我想从内置的箱线图函数中提取值。在 A1 中有三个特大值(1000000),而正确的最大值是 273。

a = boxplot(A1)

a =

  173.0043
  174.0028
  175.0033
  176.0027
  177.0032
  178.0027
  179.0031

我试过了,但我不知道这些值到底是什么,这些不是异常值本身,也不是异常值的索引。

findobj(gcf,'tag','Outliers'); 仅返回 179.0031

如何从箱线图中提取异常值或其索引?

【问题讨论】:

    标签: matlab


    【解决方案1】:

    BOXPLOT 返回不同图形对象的句柄数组。

    在默认参数下(plotstyle 设置为 outline 等),输出是 7 x M 句柄数组,其中 M 是箱线图组的数量,每个具有以下 7 个句柄:

    1. 上晶须
    2. 下胡须
    3. 上邻值
    4. 下邻值
    5. 盒子
    6. 中位数
    7. 异常值

    在不同的参数下,箱线图可能返回不同数量的句柄,所以最好通过标签找到你需要的。

    要提取数据,您必须访问特定对象的 Data 属性(如果该属性存在)。

    h = findobj(gcf,'tag','Outliers');
    
    xdata = get(h,'XData');
    ydata = get(h,'YData');
    

    【讨论】:

      猜你喜欢
      • 2017-12-03
      • 1970-01-01
      • 2021-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多