Skip to content

Commit

Permalink
Update documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
paradoxxxzero committed Feb 25, 2016
1 parent 0d60a81 commit 9d70ff3
Show file tree
Hide file tree
Showing 15 changed files with 178 additions and 102 deletions.
14 changes: 7 additions & 7 deletions demo/moulinrouge/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -206,24 +206,24 @@ def test_gauge():
def test_solidgauge():
gauge = SolidGauge(half_pie=True,
inner_radius=0.70,
print_values=True,
print_values=not True,
human_readable=True)
gauge.title = 'Hello World!'
percent_formatter = lambda x: '{:.10g}%'.format(x)
dollar_formatter = lambda x: '{:.10g}$'.format(x)
gauge.value_formatter = percent_formatter

gauge.add('Series 1', [{'value': 225000, 'maxvalue': 1275000}],
gauge.add('Series 1', [{'value': 225000, 'max_value': 1275000}],
formatter=dollar_formatter)
gauge.add('Series 2', [{'value': 110, 'maxvalue': 100}])
gauge.add('Series 2', [{'value': 110, 'max_value': 100}])
gauge.add('Series 3', [{'value': 3}])
gauge.add(
'Series 4', [
{'value': 51, 'maxvalue': 100},
{'value': 12, 'maxvalue': 100}])
gauge.add('Series 5', [{'value': 79, 'maxvalue': 100}])
{'value': 51, 'max_value': 100},
{'value': 12, 'max_value': 100}])
gauge.add('Series 5', [{'value': 79, 'max_value': 100}])
gauge.add('Series 6', 99)
gauge.add('Series 7', [{'value': 100, 'maxvalue': 100}])
gauge.add('Series 7', [{'value': 100, 'max_value': 100}])
return gauge.render_response()

@app.route('/test/gauge/log')
Expand Down
7 changes: 7 additions & 0 deletions docs/api/pygal.formatters.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
pygal.formatters module
=======================

.. automodule:: pygal.formatters
:members:
:undoc-members:
:show-inheritance:
1 change: 1 addition & 0 deletions docs/api/pygal.graph.rst
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ Submodules
pygal.graph.public
pygal.graph.pyramid
pygal.graph.radar
pygal.graph.solidgauge
pygal.graph.stackedbar
pygal.graph.stackedline
pygal.graph.time
Expand Down
7 changes: 7 additions & 0 deletions docs/api/pygal.graph.solidgauge.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
pygal.graph.solidgauge module
=============================

.. automodule:: pygal.graph.solidgauge
:members:
:undoc-members:
:show-inheritance:
1 change: 1 addition & 0 deletions docs/api/pygal.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ Submodules
pygal.colors
pygal.config
pygal.etree
pygal.formatters
pygal.interpolate
pygal.serie
pygal.state
Expand Down
1 change: 1 addition & 0 deletions docs/api/pygal.test.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Submodules
pygal.test.test_colors
pygal.test.test_config
pygal.test.test_date
pygal.test.test_formatters
pygal.test.test_graph
pygal.test.test_histogram
pygal.test.test_interpolate
Expand Down
7 changes: 7 additions & 0 deletions docs/api/pygal.test.test_formatters.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
pygal.test.test_formatters module
=================================

.. automodule:: pygal.test.test_formatters
:members:
:undoc-members:
:show-inheritance:
1 change: 1 addition & 0 deletions docs/documentation/types/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ pygal provides various kinds of charts:
box
dot
funnel
solidgauge
gauge
pyramid
treemap
Expand Down
52 changes: 52 additions & 0 deletions docs/documentation/types/solidgauge.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
SolidGauge
----------

SolidGauge charts

Normal
~~~~~~

.. pygal-code::

gauge = pygal.SolidGauge(inner_radius=0.70)
percent_formatter = lambda x: '{:.10g}%'.format(x)
dollar_formatter = lambda x: '{:.10g}$'.format(x)
gauge.value_formatter = percent_formatter

gauge.add('Series 1', [{'value': 225000, 'max_value': 1275000}],
formatter=dollar_formatter)
gauge.add('Series 2', [{'value': 110, 'max_value': 100}])
gauge.add('Series 3', [{'value': 3}])
gauge.add(
'Series 4', [
{'value': 51, 'max_value': 100},
{'value': 12, 'max_value': 100}])
gauge.add('Series 5', [{'value': 79, 'max_value': 100}])
gauge.add('Series 6', 99)
gauge.add('Series 7', [{'value': 100, 'max_value': 100}])


Half
~~~~

.. pygal-code::

gauge = pygal.SolidGauge(
half_pie=True, inner_radius=0.70,
style=pygal.style.styles['default'](value_font_size=10))

percent_formatter = lambda x: '{:.10g}%'.format(x)
dollar_formatter = lambda x: '{:.10g}$'.format(x)
gauge.value_formatter = percent_formatter

gauge.add('Series 1', [{'value': 225000, 'max_value': 1275000}],
formatter=dollar_formatter)
gauge.add('Series 2', [{'value': 110, 'max_value': 100}])
gauge.add('Series 3', [{'value': 3}])
gauge.add(
'Series 4', [
{'value': 51, 'max_value': 100},
{'value': 12, 'max_value': 100}])
gauge.add('Series 5', [{'value': 79, 'max_value': 100}])
gauge.add('Series 6', 99)
gauge.add('Series 7', [{'value': 100, 'max_value': 100}])
10 changes: 10 additions & 0 deletions pygal/css/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@
fill: {{ style.foreground_strong }};
}


{{ id }}.reactive {
fill-opacity: {{ style.opacity }};
}
Expand Down Expand Up @@ -147,6 +148,15 @@
font-size: 1.5em;
}

{{ id }}.bound {
font-size: .5em;
}

{{ id }}.max-value {
font-size: .75em;
fill: {{ style.foreground_subtle }};
}

{{ id }}.map-element {
fill: {{ style.plot_background }};
stroke: {{ style.foreground_subtle }} !important;
Expand Down
10 changes: 5 additions & 5 deletions pygal/graph/solidgauge.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,19 +48,19 @@ def gaugify(self, serie, squares, sq_dimensions, current_square):
(current_square[0]*sq_dimensions[1]) - (sq_dimensions[1] / 2.))
end_angle = 2 * pi

maxvalue = serie.metadata.get(0, {}).get('maxvalue', 100)
max_value = serie.metadata.get(0, {}).get('max_value', 100)
radius = min([sq_dimensions[0]/2, sq_dimensions[1]/2]) * .9
small_radius = radius * serie.inner_radius

self.svg.gauge_background(
serie_node, start_angle, center, radius, small_radius, end_angle,
self.half_pie)
self.half_pie, self._serie_format(serie, max_value))

sum_ = 0
for i, value in enumerate(serie.values):
if value is None:
continue
ratio = min(value, maxvalue) / maxvalue
ratio = min(value, max_value) / max_value
if self.half_pie:
angle = 2 * pi * ratio / 2
else:
Expand All @@ -79,15 +79,15 @@ def gaugify(self, serie, squares, sq_dimensions, current_square):
serie_node, gauge_, radius, small_radius,
angle, start_angle, center, val, i, metadata,
self.half_pie, end_angle,
self._serie_format(serie, maxvalue)),
self._serie_format(serie, max_value)),
metadata)
start_angle += angle
sum_ += value

x, y = center
self.svg.node(
serie_node['text_overlay'], 'text',
class_='value solidgauge-sum',
class_='value gauge-sum',
x=x,
y=y + self.style.value_font_size / 3,
attrib={'text-anchor': 'middle'}
Expand Down

0 comments on commit 9d70ff3

Please sign in to comment.