Mathematica: различные гистограммы с одинаковой системой координат и одинаковой шириной бина - PullRequest
0 голосов
/ 13 февраля 2012

Я выполняю кластерный анализ и хочу отобразить некоторые из моих результатов в гистограммах. Для сравнения одного кластера с другим я считаю полезным использовать одинаковую систему координат и одинаковую ширину бина для каждой гистограммы. Для диапазона сюжета я уже получил совет:

PlotRange/.Options[Histogram[DeleteCases[Flatten[data], {}], 
           PlotRange -> Automatic], PlotRange]

Есть ли подобный подход для ширины бункера? При моем подходе вы увидите, что для кластера 3 ширина ячейки слишком велика, поскольку нижняя полоса превышает систему координат.

Пример:

data = {{-1.2056`, -1.46192`, -1.30053`, -2.52879`, -0.99636`, {}},
{-1.73904`, -1.164`, -1.83398`, -0.97505`, {}, {}, -0.503256`,
-0.63802`}, {-0.785963`, -0.711821`, -0.820439`, -1.8699`, -3.9659`,
-1.4456`, -1.67021`, -1.42009`, -2.5644`, -1.45002`, -1.27806`,
-1.66529`, -1.67073`, -3.31102`, -3.38638`}}

Table[
 Histogram[
  DeleteCases[data[[i]], {}], 
  3*Abs[Differences[
      Last[PlotRange /. 
        Options[Histogram[DeleteCases[Flatten[data], {}], 
          PlotRange -> Automatic], PlotRange]]]]/
    Length[DeleteCases[Flatten[data], {}]],
  PlotLabel -> 
   Text[Style["Cluster " <> ToString[i], TextAlignment -> Center]],
  Frame -> {{True, None}, {True, None}},
  FrameLabel -> {{"###", None}, {"###", None}},
  PlotRange -> 
   Part[PlotRange /. 
     Options[Histogram[DeleteCases[Flatten[data], {}], 
       PlotRange -> Automatic], PlotRange], 2]
  ], {i, Length[data]}]
...