X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Fcharts%2Froc-chart-cairo.c;h=bf6398460dbf31694f44bcd66f2d8c2d75e6caf5;hb=9eb07d79cfaa5a147a708df832c9c9164be4c312;hp=97f7a45d9ad6293755ba5d401fdae386af2d955f;hpb=96994a54e60e9c95b8bba54c2281acf7059b1203;p=pspp diff --git a/src/output/charts/roc-chart-cairo.c b/src/output/charts/roc-chart-cairo.c index 97f7a45d9a..bf6398460d 100644 --- a/src/output/charts/roc-chart-cairo.c +++ b/src/output/charts/roc-chart-cairo.c @@ -20,25 +20,27 @@ #include "data/case.h" #include "data/casereader.h" -#include "language/stats/roc.h" +#include "language/commands/roc.h" #include "output/cairo-chart.h" #include "gettext.h" #define _(msgid) gettext (msgid) void -xrchart_draw_roc (const struct chart_item *chart_item, cairo_t *cr, +xrchart_draw_roc (const struct chart *chart, cairo_t *cr, struct xrchart_geometry *geom) { - const struct roc_chart *rc = to_roc_chart (chart_item); + const struct roc_chart *rc = to_roc_chart (chart); size_t i; xrchart_write_title (cr, geom, _("ROC Curve")); xrchart_write_xlabel (cr, geom, _("1 - Specificity")); xrchart_write_ylabel (cr, geom, _("Sensitivity")); - xrchart_write_xscale (cr, geom, 0, 1); - xrchart_write_yscale (cr, geom, 0, 1); + if (! xrchart_write_xscale (cr, geom, 0, 1)) + return; + if (! xrchart_write_yscale (cr, geom, 0, 1)) + return; if (rc->reference) { @@ -56,11 +58,11 @@ xrchart_draw_roc (const struct chart_item *chart_item, cairo_t *cr, xrchart_vector_start (cr, geom, rv->name); for (; (cc = casereader_read (r)) != NULL; case_unref (cc)) { - double se = case_data_idx (cc, ROC_TP)->f; - double sp = case_data_idx (cc, ROC_TN)->f; + double se = case_num_idx (cc, ROC_TP); + double sp = case_num_idx (cc, ROC_TN); - se /= case_data_idx (cc, ROC_FN)->f + case_data_idx (cc, ROC_TP)->f ; - sp /= case_data_idx (cc, ROC_TN)->f + case_data_idx (cc, ROC_FP)->f ; + se /= case_num_idx (cc, ROC_FN) + case_num_idx (cc, ROC_TP); + sp /= case_num_idx (cc, ROC_TN) + case_num_idx (cc, ROC_FP); xrchart_vector (cr, geom, 1 - sp, se); }