From 29b0e824a24b1c8090da7774d53803a70bfe4e36 Mon Sep 17 00:00:00 2001
From: Richard Clay <richard.clay@gmail.com>
Date: Wed, 14 Nov 2018 16:07:21 +0000
Subject: [PATCH] Some pylint improvements

---
 gramps/plugins/drawreport/statisticschart.py | 50 +++++++++++---------
 1 file changed, 28 insertions(+), 22 deletions(-)

diff --git a/gramps/plugins/drawreport/statisticschart.py b/gramps/plugins/drawreport/statisticschart.py
index da3c66910..5072e3d00 100644
--- a/gramps/plugins/drawreport/statisticschart.py
+++ b/gramps/plugins/drawreport/statisticschart.py
@@ -61,6 +61,7 @@ from gramps.gen.datehandler import parser
 from gramps.gen.display.place import displayer as _pd
 from gramps.gen.proxy import CacheProxyDb
 
+
 #------------------------------------------------------------------------
 #
 # Private Functions
@@ -154,11 +155,12 @@ def draw_pie_chart(doc, center_x, center_y, radius, data, start=0):
         total += item[1]
 
     for item in data:
-        incr = 360.0*(item[1]/total)
+        incr = 360.0 * (item[1] / total)
         draw_wedge(doc, item[0], center_x, center_y, radius,
                    start, start + incr)
         start += incr
 
+
 def draw_legend(doc, start_x, start_y, data, title, label_style):
     """
     Draws a legend for a graph in the specified document. The data passed is
@@ -186,7 +188,7 @@ def draw_legend(doc, start_x, start_y, data, title, label_style):
         pstyle = style_sheet.get_paragraph_style(pstyle_name)
         size = utils.pt2cm(pstyle.get_font().get_size())
         doc.draw_text(label_style, title,
-                      start_x + (3*size), start_y - (size*0.25))
+                      start_x + (3 * size), start_y - (size * 0.25))
         start_y += size * 1.3
 
     for (sformat, size, legend) in data:
@@ -194,14 +196,16 @@ def draw_legend(doc, start_x, start_y, data, title, label_style):
         pstyle_name = gstyle.get_paragraph_style()
         pstyle = style_sheet.get_paragraph_style(pstyle_name)
         size = utils.pt2cm(pstyle.get_font().get_size())
-        doc.draw_box(sformat, "", start_x, start_y, (2*size), size)
+        doc.draw_box(sformat, "", start_x, start_y, (2 * size), size)
         doc.draw_text(label_style, legend,
-                      start_x + (3*size), start_y - (size*0.25))
+                      start_x + (3 * size), start_y - (size * 0.25))
         start_y += size * 1.3
 
+
 _TTT = time.localtime(time.time())
 _TODAY = parser.parse("%04d-%02d-%02d" % _TTT[:3])
 
+
 def estimate_age(dbase, person,
                  end_handle=None, start_handle=None, today=_TODAY):
     """
@@ -292,6 +296,7 @@ def estimate_age(dbase, person,
         age = (lower, upper)
     return age
 
+
 #------------------------------------------------------------------------
 #
 # Global options and their names
@@ -313,10 +318,11 @@ class _options:
     ]
 
 
-def _T_(value): # enable deferred translations (see Python docs 22.1.3.4)
+def _T_(value):  # enable deferred translations (see Python docs 22.1.3.4)
     return value
 # _T_ is a gramps-defined keyword -- see po/update_po.py and po/genpot.sh
 
+
 #------------------------------------------------------------------------
 #
 # Data extraction methods from the database
@@ -635,9 +641,9 @@ class Extract:
             # get the information
             type_func = chart[2]
             data_func = chart[3]
-            obj = type_func(person)        # e.g. get_date()
+            obj = type_func(person)  # e.g. get_date()
             if obj:
-                value = data_func(obj)        # e.g. get_year()
+                value = data_func(obj)  # e.g. get_year()
             else:
                 value = [_T_("Personal information missing")]
             # list of information found
@@ -647,7 +653,6 @@ class Extract:
                 else:
                     chart[1][key] = 1
 
-
     def collect_data(self, dbase, people, menu, genders,
                      year_from, year_to, no_years, cb_progress, rlocale):
         """goes through the database and collects the selected personal
@@ -668,7 +673,7 @@ class Extract:
         - Dict of values with their counts
         (- Method)
         """
-        self.db = dbase        # store for use by methods
+        self.db = dbase  # store for use by methods
         self._locale = rlocale
         self._ = rlocale.translation.sgettext
         self._get_type = rlocale.get_type
@@ -722,10 +727,12 @@ class Extract:
             self.get_person_data(person, data)
         return data
 
+
 # GLOBAL: required so that we get access to _Extract.extractors[]
 # Unfortunately class variables cannot reference instance methods :-/
 _Extract = Extract()
 
+
 #------------------------------------------------------------------------
 #
 # Statistics report
@@ -852,8 +859,8 @@ class StatisticsChart(Report):
         for data in sorted(self.data):
             self.doc.start_page()
             if mark:
-                self.doc.draw_text('SC-title', '', 0, 0, mark) # put it in TOC
-                mark = None # crock, but we only want one of them
+                self.doc.draw_text('SC-title', '', 0, 0, mark)  # put it in TOC
+                mark = None  # crock, but we only want one of them
             if len(data[3]) < self.bar_items:
                 self.output_piechart(*data[:4])
             else:
@@ -862,7 +869,6 @@ class StatisticsChart(Report):
             self._user.step_progress()
         self._user.end_progress()
 
-
     def output_piechart(self, title1, typename, data, lookup):
 
         # set layout variables
@@ -888,24 +894,23 @@ class StatisticsChart(Report):
             text = "%s (%d)" % (self._(key), data[key])
             # graphics style, value, and it's label
             chart_data.append((style, data[key], text))
-            color = (color+1) % 7    # There are only 7 color styles defined
+            color = (color + 1) % 7  # There are only 7 color styles defined
 
         margin = 1.0
         legendx = 2.0
 
         # output data...
-        radius = middle - 2*margin
+        radius = middle - 2 * margin
         yoffset += margin + radius
         draw_pie_chart(self.doc, middle_w, yoffset, radius, chart_data, -90)
-        yoffset += radius + 2*margin
-        if middle == middle_h:   # Landscape
+        yoffset += radius + 2 * margin
+        if middle == middle_h:  # Landscape
             legendx = 1.0
             yoffset = margin
 
         text = self._("%s (persons):") % self._(typename)
         draw_legend(self.doc, legendx, yoffset, chart_data, text, 'SC-legend')
 
-
     def output_barchart(self, title1, typename, data, lookup):
 
         pt2cm = utils.pt2cm
@@ -935,9 +940,9 @@ class StatisticsChart(Report):
         max_value = max(data[k] for k in lookup) if lookup else 0
         # horizontal area for the gfx bars
         margin = 1.0
-        middle = width/2.0
-        textx = middle + margin/2.0
-        stopx = middle - margin/2.0
+        middle = width / 2.0
+        textx = middle + margin / 2.0
+        stopx = middle - margin / 2.0
         maxsize = stopx - margin
 
         # start output
@@ -967,13 +972,14 @@ class StatisticsChart(Report):
             value = data[key]
             startx = stopx - (maxsize * value / max_value)
             self.doc.draw_box('SC-bar', "",
-                              startx, yoffset, stopx-startx, row_h)
+                              startx, yoffset, stopx - startx, row_h)
             # text after bar
             text = "%s (%d)" % (self._(key), data[key])
             self.doc.draw_text('SC-text', text, textx, yoffset)
 
         return
 
+
 #------------------------------------------------------------------------
 #
 # StatisticsChartOptions
@@ -1126,7 +1132,7 @@ class StatisticsChartOptions(MenuReportOptions):
         disable the person option
         """
         filter_value = self.__filter.get_value()
-        if filter_value == 0: # "Entire Database" (as "include_single=False")
+        if filter_value == 0:  # "Entire Database" (as "include_single=False")
             self.__pid.set_available(False)
         else:
             # The other filters need a center person (assume custom ones too)