Visualization of Information with Pie Charts in Matplotlib | by Diana Rozenshteyn | Oct, 2024

Examples of the best way to create various kinds of pie charts utilizing Matplotlib to visualise the outcomes of database evaluation in a Jupyter Pocket book with Pandas

Photograph by Niko Nieminen on Unsplash

Whereas engaged on my Grasp’s Thesis titled “Elements Related to Impactful Scientific Publications in NIH-Funded Coronary heart Illness Analysis”, I’ve used various kinds of pie charts for instance a number of the key findings from the database evaluation.

A pie chart could be an efficient selection for knowledge visualization when a dataset accommodates a restricted variety of classes representing elements of an entire, making it well-suited for displaying categorical knowledge with an emphasis on evaluating the relative proportions of every class.

On this article, I’ll show the best way to create 4 various kinds of pie charts utilizing the identical dataset to supply a extra complete visible illustration and deeper perception into the information. To realize this, I’ll use Matplotlib, Python’s plotting library, to show pie chart visualizations of the statistical knowledge saved within the dataframe. If you’re not accustomed to Matplotlib library, an excellent begin is Python Information Science Handbook by Jake VanderPlas, particularly chapter on Visualization with Matplotlib and matplotlib.org.

First, let’s import all the mandatory libraries and extensions:

Subsequent, we’ll put together the CSV file for processing:

The mini dataset used on this article highlights the highest 10 journals for coronary heart illness analysis publications from 2002 to 2020 and is an element of a bigger database collected for the Grasp’s Thesis analysis. The columns “Feminine,” “Male,” and “Unknown” signify the gender of the primary writer of the revealed articles, whereas the “Whole” column displays the overall variety of coronary heart illness analysis articles revealed in every journal.

Picture by the writer and represents output of the Pie_Chart_Artcile_2.py pattern code above.

For smaller datasets with fewer classes, a pie chart with exploding slices can successfully spotlight a key class by pulling it out barely from the remainder of the chart. This visible impact attracts consideration to particular classes, making them stand out from the entire. Every slice represents a portion of the overall, with its measurement proportional to the information it represents. Labels could be added to every slice to point the class, together with percentages to indicate their proportion to the overall. This visible method makes the exploded slice stand out with out shedding the context of the complete knowledge illustration.

Picture by the writer and represents output of the Pie_Chart_Artcile_3.py pattern code above.

The identical exploding slices method could be utilized to all different entries within the pattern dataset, and the ensuing charts could be displayed inside a single determine. Such a visualization helps to spotlight the over illustration or underneath illustration of a selected class inside the dataset. Within the instance supplied, presenting all 10 charts in a single determine reveals that not one of the high 10 journals in coronary heart illness analysis revealed extra articles authored by ladies than males, thereby emphasizing the gender disparity.

Gender distributions for high 10 journals for coronary heart illness analysis publications, 2002–2020. Picture by the writer and represents output of the Pie_Chart_Artcile_4.py pattern code above.

A variation of the pie chart, often known as a donut chart, will also be used to visualise knowledge. Donut charts, like pie charts, show the proportions of classes that make up an entire, however the heart of the donut chart will also be utilized to current further knowledge. This format is much less cluttered visually and may make it simpler to match the relative sizes of slices in comparison with a typical pie chart. Within the instance used on this article, the donut chart highlights that among the many high 10 journals for coronary heart illness analysis publications, the American Journal of Physiology, Coronary heart and Circulatory Physiology revealed probably the most articles, accounting for 21.8%.

Picture by the writer and represents output of the Pie_Chart_Artcile_5.py pattern code above.

We will improve the visualization of further data from the pattern dataset by constructing on the earlier donut chart and making a nested model. The add_artist() methodology from Matplotlib’s determine module is used to include any further Artist (similar to figures or objects) into the bottom determine. Much like the sooner donut chart, this variation shows the distribution of publications throughout the highest 10 journals for coronary heart illness analysis. Nonetheless, it additionally contains an extra layer that exhibits the gender distribution of first authors for every journal. This visualization highlights {that a} bigger share of the primary authors are male.

Picture by the writer and represents output of the Pie_Chart_Artcile_6.py pattern code above.

In conclusion, pie charts are efficient for visualizing knowledge with a restricted variety of classes, as they permit viewers to rapidly perceive a very powerful classes or dominant proportions at a look. On this particular instance, using 4 various kinds of pie charts gives a transparent visualization of the gender distribution amongst first authors within the high 10 journals for coronary heart illness analysis publications, based mostly on the 2002 to 2020 mini dataset used on this research. It’s evident {that a} increased share of the publication’s first authors are males, and not one of the high 10 journals for coronary heart illness analysis revealed extra articles authored by females than by males throughout the examined interval.

Jupyter Pocket book and dataset used for this text could be discovered at GitHub

Thanks for studying,

Diana

Notice: I used GitHub embeds to publish this text.