Как я могу получить гистограмму для отображения бинов в процентах в Mathematica?

В настоящее время я могу сгенерировать гистограмму со значениями по оси Y в диапазоне от 0,0 до 1,0, используя hspec "Вероятность", но мне было интересно, есть ли способ отобразить ее в процентах (это ничего не изменит, кроме маркировки оси у).

Вот что я сейчас использую:

Histogram[rawdata, {{0, 10, 20, 30, 40, 50, 60, 70, 80, 90,100}}, "Probability", 
          PlotRange -> {0, 1}]

1 ответ

Решение
rawdata = RandomReal[NormalDistribution[50, 20], 12000];
bins = {Range[0, 100, 10]};
Histogram[rawdata, bins, "Probability", 
 Ticks ->{First@bins, 
          Table[{.01 i, If[Mod[i , 5] == 0, ToString[i] <> "%", ""]}, {i, 100}]}]

С BarChart вы также получаете полный контроль над метками, и, возможно, лучше в некоторых ситуациях:

BarChart[(Length /@ BinLists[rawdata, bins])/Length@rawdata 100, 
  ChartLabels -> bins[[1, 2 ;;]],
  Ticks -> {Automatic,
            Table[{i, If[Mod[i, 5] == 0, ToString[i] <> "%", ""]}, {i, 1, 100}]
           }]

редактировать

Если вы собираетесь использовать BinLists[]Пожалуйста, запомните эту скользкую деталь: (из справки)

В BinLists[data,{xMin,xMax,dx}] элементы помещаются в bin i, когда их значения удовлетворяют xMin+(i-1) dx <= x

В форме BinLists[data,{{b1,b2, ...}}], bi на каждом конце может быть -Infinity и +Infinity.

Другие вопросы по тегам