Skip to content

Commit

Permalink
Merge d0645df into c1cd162
Browse files Browse the repository at this point in the history
  • Loading branch information
hektorinho committed Jan 29, 2016
2 parents c1cd162 + d0645df commit 24f1020
Show file tree
Hide file tree
Showing 5 changed files with 82 additions and 3 deletions.
2 changes: 2 additions & 0 deletions pygal/__init__.py
Expand Up @@ -40,6 +40,8 @@
from pygal.graph.horizontalbar import HorizontalBar
from pygal.graph.horizontalstackedbar import HorizontalStackedBar
from pygal.graph.line import Line
from pygal.graph.horizontalline import HorizontalLine
from pygal.graph.horizontalstackedline import HorizontalStackedLine
from pygal.graph.pie import Pie
from pygal.graph.pyramid import Pyramid, VerticalPyramid
from pygal.graph.radar import Radar
Expand Down
35 changes: 35 additions & 0 deletions pygal/graph/horizontalline.py
@@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# This file is part of pygal
#
# A python svg graph plotting library
# Copyright © 2012-2015 Kozea
#
# This library is free software: you can redistribute it and/or modify it under
# the terms of the GNU Lesser General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option) any
# later version.
#
# This library is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with pygal. If not, see <http://www.gnu.org/licenses/>.

"""Horizontal line graph"""

from pygal.graph.line import Line
from pygal.graph.horizontal import HorizontalGraph


class HorizontalLine(HorizontalGraph, Line):

"""Horizontal Line graph"""

def _plot(self):
"""Draw the lines in reverse order"""
for serie in self.series[::-1]:
self.line(serie)
for serie in self.secondary_series[::-1]:
self.line(serie, True)
35 changes: 35 additions & 0 deletions pygal/graph/horizontalstackedline.py
@@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# This file is part of pygal
#
# A python svg graph plotting library
# Copyright © 2012-2015 Kozea
#
# This library is free software: you can redistribute it and/or modify it under
# the terms of the GNU Lesser General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option) any
# later version.
#
# This library is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with pygal. If not, see <http://www.gnu.org/licenses/>.

"""Horizontal Stacked Line graph"""

from pygal.graph.stackedline import StackedLine
from pygal.graph.horizontal import HorizontalGraph


class HorizontalStackedLine(HorizontalGraph, StackedLine):

"""Horizontal Stacked Line graph"""

def _plot(self):
"""Draw the lines in reverse order"""
for serie in self.series[::-1]:
self.line(serie)
for serie in self.secondary_series[::-1]:
self.line(serie, True)
11 changes: 8 additions & 3 deletions pygal/graph/line.py
Expand Up @@ -148,9 +148,14 @@ def line(self, serie, rescale=False):
def _compute(self):
"""Compute y min and max and y scale and set labels"""
# X Labels
self._x_pos = [
x / (self._len - 1) for x in range(self._len)
] if self._len != 1 else [.5] # Center if only one value
if self.horizontal:
self._x_pos = [
x / (self._len - 1) for x in range(self._len)
][::-1] if self._len != 1 else [.5] # Center if only one value
else:
self._x_pos = [
x / (self._len - 1) for x in range(self._len)
] if self._len != 1 else [.5] # Center if only one value

self._points(self._x_pos)

Expand Down
2 changes: 2 additions & 0 deletions pygal/test/test_config.py
Expand Up @@ -23,6 +23,7 @@
Line, Dot, Pie, Treemap, Radar, Config, Bar, Funnel,
Histogram, Gauge, Box, XY,
Pyramid, HorizontalBar, HorizontalStackedBar,
HorizontalStackedLine, HorizontalLine,
DateTimeLine, TimeLine, DateLine, TimeDeltaLine)
from pygal.graph.map import BaseMap
from pygal.graph.horizontal import HorizontalGraph
Expand Down Expand Up @@ -434,6 +435,7 @@ def test_y_label_major(Chart):
if Chart in (
Pie, Treemap, Funnel, Dot, Gauge, Histogram, Box,
HorizontalBar, HorizontalStackedBar,
HorizontalStackedLine, HorizontalLine,
Pyramid, DateTimeLine, TimeLine, DateLine,
TimeDeltaLine
) or issubclass(Chart, BaseMap):
Expand Down

0 comments on commit 24f1020

Please sign in to comment.