X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fstats%2Fgraph.at;h=750c192be9496a5eb0fa6b131d720dc29af64cf3;hb=444a0791dd5d5c652e6090513ff1d7b029295052;hp=e3dce9d53870f5aec33108ce4d7c7a97d88d3c8e;hpb=612b51515e356bc4dd625a3fb18d0a4f827a1e2c;p=pspp diff --git a/tests/language/stats/graph.at b/tests/language/stats/graph.at index e3dce9d538..750c192be9 100644 --- a/tests/language/stats/graph.at +++ b/tests/language/stats/graph.at @@ -1,3 +1,19 @@ +dnl PSPP - a program for statistical analysis. +dnl Copyright (C) 2017 Free Software Foundation, Inc. +dnl +dnl This program is free software: you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation, either version 3 of the License, or +dnl (at your option) any later version. +dnl +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +dnl GNU General Public License for more details. +dnl +dnl You should have received a copy of the GNU General Public License +dnl along with this program. If not, see . +dnl AT_BANNER([GRAPH]) AT_SETUP([GRAPH simple scatterplot]) @@ -15,7 +31,7 @@ END INPUT PROGRAM. COMPUTE Size = Age * 3 + 50. GRAPH - /SCATTERPLOT(BIVARIATE) = Age WITH Size. + /SCATTERPLOT(BIVARIATE) = Age WITH Size. ]) @@ -25,6 +41,7 @@ AT_CLEANUP AT_SETUP([GRAPH Scatter and Histogram]) +AT_KEYWORDS([slow]) AT_DATA([scatterlong.sps],[ NEW FILE. INPUT PROGRAM. @@ -40,18 +57,18 @@ COMPUTE Size = Age * 3 + 50 + 50*CityNum. STRING City (a20). -Recode CityNum +Recode CityNum (0 = "Madrid") (1 = "Paris") (ELSE = "Stockholm") into City. GRAPH - /SCATTERPLOT(BIVARIATE) = Age WITH Size + /SCATTERPLOT(BIVARIATE) = Age WITH Size GRAPH /SCATTERPLOT(BIVARIATE) = Age WITH CityNum - + GRAPH /SCATTERPLOT = CityNum WITH Age @@ -64,7 +81,7 @@ Recode CityNum GRAPH /SCATTERPLOT(BIVARIATE) = Age WITH Size BY CityNum - ADD VALUE LABELS + ADD VALUE LABELS /CityNum 1 'Rio' 2 'Tokyo' 0 'Mumbai'. GRAPH @@ -75,7 +92,7 @@ Recode CityNum ]) -AT_CHECK([pspp -O format=pdf scatterlong.sps], [0], [ignore]) +AT_CHECK([pspp -O format=pdf scatterlong.sps], [0], [ignore], [ignore]) AT_CLEANUP AT_SETUP([GRAPH missing values don't crash]) @@ -90,12 +107,12 @@ begin data. 5 . 6 1 end data. -graph +graph /scatterplot = x with y. graph - /histogram = x. + /histogram = x. ]) -AT_CHECK([pspp -o pspp.pdf scatter.sps]) +AT_CHECK([pspp -o pspp.pdf scatter.sps], [], [ignore]) dnl Ignore output -- this is just a no-crash check. AT_CLEANUP @@ -111,14 +128,14 @@ begin data. 5 . 6 1 end data. -graph +graph /scatterplot = x with y /missing = VARIABLE. graph /histogram = x /missing = VARIABLE. ]) -AT_CHECK([pspp -o pspp.pdf scatter.sps]) +AT_CHECK([pspp -o pspp.pdf scatter.sps], [], [ignore]) dnl Ignore output -- this is just a no-crash check. AT_CLEANUP @@ -134,15 +151,15 @@ begin data. 5 . 8 6 1 8 end data. -graph +graph /scatterplot = x with y by z /missing = VARIABLE. -graph +graph /scatterplot = x with y by z. ]) -AT_CHECK([pspp -o pspp.pdf scatter.sps]) +AT_CHECK([pspp -o pspp.pdf scatter.sps], [0], [ignore]) dnl Ignore output -- this is just a no-crash check. AT_CLEANUP @@ -151,11 +168,11 @@ AT_SETUP([GRAPH histogram with null data]) AT_DATA([null-hist.sps], [dnl data list list /x *. begin data. -1109 -. +1109 +. end data. -graph +graph /histogram = x. ]) @@ -165,6 +182,23 @@ dnl Ignore output -- this is just a no-crash check. AT_CLEANUP +AT_SETUP([GRAPH histogram all missing]) +AT_DATA([null-hist.sps], [dnl +data list list /x *. +begin data. +. +end data. + +graph + /histogram = x. + +]) + +AT_CHECK([pspp null-hist.sps], [0], [ignore]) +dnl Ignore output -- this is just a no-crash check. +AT_CLEANUP + + AT_SETUP([GRAPH barcharts]) @@ -290,4 +324,114 @@ GRAPH /BAR = MINIMUM(y) BY z BY y. AT_CHECK([pspp -o pspp.pdf barchart.sps], [0], [ignore]) dnl Ignore output -- this is just a no-crash check. -AT_CLEANUP \ No newline at end of file +AT_CLEANUP + + + + + +AT_SETUP([GRAPH buggy syntax]) + +AT_DATA([barchart.sps], [dnl +data list notable list /x y z*. +begin data +1 1 3 +2 1 4 +10 2 4 +end data. + +GRAPH /BAR = MINIMUM({) BY z BY y. +]) + +AT_CHECK([pspp -o pspp.pdf barchart.sps], [1], [ignore]) +dnl Ignore output -- this is just a no-crash check. + +AT_CLEANUP + + +dnl Check that percentages are calculated with respect to the +dnl proper total. See bug #56247 +AT_SETUP([GRAPH barchart percentage sub-categorical]) +AT_DATA([barchart.sps], [dnl +data list list notable /penalty_favopp_x * XYdem_racethW8 * w *. +begin data. +1 0 1960 +1 1 376 +2 0 678 +2 1 147 +4 0 368 +4 1 164 +5 0 427 +5 1 274 +. . 1522 +end data. + +weight by w. + +* crosstabs +* /tables=penalty_favopp_x by XYdem_racethW8 +* /format=AVALUE TABLES PIVOT +* /statistics=CHISQ +* /cells COUNT COLUMN TOTAL. + +graph + /bar=pct by penalty_favopp_x + . + +graph + /bar=pct by penalty_favopp_x by XYdem_racethW8 + . +]) + +AT_CHECK([pspp --testing barchart.sps], [0], [dnl +Graphic: Barchart +Percentage: 0 +Total Categories: 4 +Primary Categories: 4 +Largest Category: 53.1634 +Total Count: 100 +Y Label: "Percentage" +Categorical Variables: + Var: "penalty_favopp_x" +Categories: + 0 " 1.00" + 1 " 2.00" + 2 " 4.00" + 3 " 5.00" +All Categories: +Count: 53.1634; Cat: " 1.00" +Count: 18.7756; Cat: " 2.00" +Count: 12.1074; Cat: " 4.00" +Count: 15.9536; Cat: " 5.00" + +Graphic: Barchart +Percentage: 0 +Total Categories: 8 +Primary Categories: 4 +Largest Category: 57.0929 +Total Count: 200 +Y Label: "Percentage" +Categorical Variables: + Var: "penalty_favopp_x" + Var: "XYdem_racethW8" +Categories: + 0 " 1.00" + 1 " 2.00" + 2 " 4.00" + 3 " 5.00" +Sub-categories: + 0 " .00" + 1 " 1.00" +All Categories: +Count: 57.0929; Cat: " 1.00", " .00" +Count: 39.1259; Cat: " 1.00", " 1.00" +Count: 19.7495; Cat: " 2.00", " .00" +Count: 15.2966; Cat: " 2.00", " 1.00" +Count: 10.7195; Cat: " 4.00", " .00" +Count: 17.0656; Cat: " 4.00", " 1.00" +Count: 12.4381; Cat: " 5.00", " .00" +Count: 28.512; Cat: " 5.00", " 1.00" + +]) + +AT_CLEANUP