• Fix view box differently to avoid getting a null height on huge numbers. (#254)
  • Fix broken font_family default
  • Fix non namespaced svg (without embed) javascript by adding uuid in config object. (config is in window.pygal now).


  • Fix the missing title on x_labels with labels.
  • Auto cast to str x labels in non dual charts (#178)
  • Add print_labels option to print label too. (#197)
  • Add value_label_font_family and value_label_font_size style options for print_labels.
  • Default print_zeroes to True
  • (Re)Add xlink in desc to show on tooltip
  • Activate element on tooltip hovering. (#106)
  • Fix radar axis behaviour (#247)
  • Add tooltip support in metadata to add a title (#249).
  • Take config class options in account too.


  • Rework the ghost mechanism to come back to a more object oriented behavior, storing all state in a state object which is created on every render. (#161)
  • Refactor maps
  • Add world continents
  • Add swiss cantons map (thanks sergedroz)
  • Add inverse_y_axis options to reverse graph (#24)
  • Fix DateTimeLine time data loss (#193)
  • Fix no data for graphs with only zeroes (#148)
  • Support value formatter for pie graphs (#218) (thanks never-eat-yellow-snow)
  • Add new Box plot modes and outliers and set extremes as default (#226 #121 #149) (thanks djezar)
  • Add secondary_range option to set range for secondary values. (#203)
  • Maps are now plugins, they are removed from pygal core and moved to packages (pygal_maps_world, pygal_maps_fr, pygal_maps_ch, ...) (#225)
  • Dot now supports negative values
  • Fix dot with log scale (#201)
  • Fix y_labels behaviour for lines
  • Fix x_labels and y_labels behaviour for xy like
  • Improve gauge a bit
  • Finally allow call chains on add
  • Transform min_scale and max_scale as options
  • mode option has been renamed to a less generic name: box_mode
  • fix stack_from_top for stacked lines
  • Add flake8 test to py.test in tox
  • Remove stroke style in style and set it as a global / serie configuration.
  • Fix None values in tables
  • Fix timezones in DateTimeLine
  • Rename in Style foreground_light as foreground_strong
  • Rename in Style foreground_dark as foreground_subtle
  • Add a render_data_uri method (#237)
  • Move font_size config to style
  • Add font_family for various elements in style
  • Add googlefont:font support for style fonts
  • Add tooltip_fancy_mode to revert to old tooltips
  • Add auto print_value color + a configurable value_colors list in style
  • Add guide_stroke_dasharray and guide_stroke_dasharray in style to customize guides (#242) (thanks cbergmiller)
  • Refactor label processing in a _compute_x_labels and _compute_y_labels method. Handle both string and numbers for all charts. Create a Dual base chart for dual axis charts. (#236)
  • Better js integration in maps. Use the normal tooltip.


  • Remove DateY and replace it by real XY datetime, date, time and timedelta support. (#188)
  • Introduce new XY configuration options: xrange, x_value_formatter.
  • Add show_x_labels option to remove them and the x axis.
  • Set print_values to False by default.
  • Fix secondary serie text values when None in data. (#192)


  • Add margin_top, margin_right, margin_bottom, margin_left options which defaults to margin. (thanks djt)
  • Update django mime parameter from mimetype to content_type. (thanks kswiat)
  • Allow a color and a style parameter to value metadata.


  • Fix Decimal incompatibility


  • Adds config option missing_value_fill_truncation. (thanks sirlark)
  • Avoid HTTP 301 Moved Permanently (thanks jean)
  • Add a Django response method (thanks inlanger)
  • Fix (#170)
  • Fix format error on list like in table
  • Add legend_at_bottom_columns option to specify number of columns in legend when at bottom. (#157)
  • Fix secondary interpolation (#165)
  • Adds an extra class (axis) to horizontal guides if the label is “0” (#147) (thanks sirlark)
  • Add line stroke customization parameters to (#154) (thanks blakev)


  • Add stack_from_top option to reverse stack graph data order
  • Minor fix for empty logarithmic chart
  • Reorders axes in SVG output. Fix #145 (thanks sirlark)


  • Add per serie configuration
  • Add half pie (thanks philt2001)
  • Make lxml an optionnal dependency (huge speed boost in pypy)
  • Add render_table (WIP)
  • Support colors in rgb / rgba for parametric styles


  • Add support for n separated multiline titles (thanks sirlark)
  • New show_only_major_dots option (thanks Le-Stagiaire)
  • Remove 16 colors limitation
  • Fix 0 in range (thanks elpaso)


  • Fix y_labels map iterator exhaustion in python 3


  • Fix division by zero in spark text (thanks laserpony)
  • Fix config metaclass problem in python 3
  • Fix –version in pygal_gen


  • Allow arbitrary number of x-labels on line plot (thanks nsmgr8)


  • Fix broken tests


  • Fix value formatting in maps


  • Finally a changelog !
  • Hopefully fix weird major scale algorithm
  • Add options to customize major labels (y_labels_major, y_labels_major_every, y_labels_major_count)
  • Css can now be inline with the “inline:” prefix
  • Visited links bug fixed
  • Add french maps by department and region (This will be externalized in an extension later)


  • Whisker Box Plot
  • Python 3 fix
  • DateY X axis formatting (x_label_format)