SpreadLevel Plot: Don't try to take the logarithm of a negative
authorJohn Darrington <john@darrington.wattle.id.au>
Sat, 11 Jul 2020 09:08:23 +0000 (11:08 +0200)
committerJohn Darrington <john@darrington.wattle.id.au>
Sat, 11 Jul 2020 09:08:23 +0000 (11:08 +0200)
src/output/charts/spreadlevel-plot.c

index 8b599b8cd29f1633746fc590beddba5c224850f3..e4fed6178666fdfe4fbe9fc161d697fc50c17d65 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 2012 Free Software Foundation, Inc.
+   Copyright (C) 2012, 2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -53,10 +53,11 @@ spreadlevel_plot_add (struct chart_item *ci, double spread, double level)
 {
   struct spreadlevel_plot_chart *sl = to_spreadlevel_plot_chart (ci);
 
+  /* Zero has a special meaning, in this implementation.  */
   if (sl->tx_pwr == 0)
     {
-      spread = log (spread);
-      level = log (level);
+      spread = log (fabs (spread));
+      level = log (fabs (level));
     }
   else
     {