我目前能够使用 hspec“概率”生成 y 轴上的值在 0.0 和 1.0 之间的直方图,但我想知道是否有办法将其显示为百分比(这只会改变标签y 轴)。
这是我目前正在使用的:
Histogram[rawdata, {{0, 10, 20, 30, 40, 50, 60, 70, 80, 90,100}}, "Probability",
PlotRange -> {0, 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[]
,请记住这个棘手的细节:(来自帮助)关于wolfram-mathematica - 如何获得直方图以在 Mathematica 中以百分比形式显示 bin?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7708449/