histc() reforged
[scilab.git] / scilab / modules / statistics / tests / nonreg_tests / bug_6306.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Paul Bignier
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 //
8 // <-- TEST WITH GRAPHIC -->
9 // <-- NO CHECK REF -->
10 //
11 // <-- Non-regression test for bug 6306 -->
12 //
13 // <-- Bugzilla URL -->
14 // http://bugzilla.scilab.org/show_bug.cgi?id=6306
15 //
16 // <-- Short Description -->
17 // It was not possible to retrieve the data computed by histplot.
18 // Also, new function histc to compute histogram data instead of plotting it.
19
20 d = rand(1, 10000, "normal");
21 normHist = "densityNorm,normWith:all";
22 [cfC, tmp, tmp, indC] = histc(d, 20, normHist);
23 [cfP, indP] = histplot(20, d);
24
25 assert_checkequal(indC, indP);
26 assert_checkalmostequal(cfC, cfP);
27
28 [cfC, tmp, tmp, indC] = histc(d, 20);
29 [cfP, indP] = histplot(20, d, normalization=%f);
30
31 assert_checkequal(indC, indP);
32 assert_checkalmostequal(cfC, cfP);
33
34 [cfC, tmp, tmp, indC] = histc(d,[-1 0 1], normHist);
35 [cfP, indP] = histplot([-1 0 1], d);
36
37 assert_checkequal(indC, indP);
38 assert_checkalmostequal(cfC, cfP);
39
40 [cfC, tmp, tmp, indC] = histc(d, [-1 0 1]);
41 [cfP, indP] = histplot([-1 0 1], d, normalization=%f);
42
43 assert_checkequal(indC, indP);
44 assert_checkalmostequal(cfC, cfP);
45
46
47
48 grand("setsd", 0);
49 lambda = 2;
50 D = grand(100000, 1, "exp", 1/lambda);
51 [cfC, tmp, tmp, indC] = histc(D, 40, normHist);
52 [cfP, indP] = histplot(40, D);
53
54 assert_checkequal(indC, indP);
55 assert_checkalmostequal(cfC, cfP);
56
57 [cfC, tmp, tmp, indC] = histc(D, 40);
58 [cfP, indP] = histplot(40, D, normalization=%f);
59
60 assert_checkequal(indC, indP);
61 assert_checkalmostequal(cfC, cfP);
62
63 [cfC, indC] = histc([0 7], D);
64 [cfP, indP] = histplot([0 7], D);
65
66 assert_checkequal(indC, indP);
67 assert_checkalmostequal(cfC, cfP);
68
69 [cfC, tmp, tmp, indC] = histc(D, [0 7]);
70 [cfP, indP] = histplot([0 7], D, normalization=%f);
71
72 assert_checkequal(indC, indP);
73 assert_checkalmostequal(cfC, cfP);