- matplotlib Plotting Cookbook
- Alexandre Devert
- 195字
- 2021-07-16 12:16:26
Plotting back-to-back bar charts
A simple but useful trick is to display two bar charts back-to-back at the same time. Think of an age pyramid of a population, showing the number of people within different age ranges. On the left side, we show the male population, while on the right we show the female population.
How to do it...
The idea is to have two bar charts, using a simple trick, that is, the length/height of one bar can be negative!
import numpy as np import matplotlib.pyplot as plt women_pop = np.array([5., 30., 45., 22.]) men_pop = np.array( [5., 25., 50., 20.]) X = np.arange(4) plt.barh(X, women_pop, color = 'r') plt.barh(X, -men_pop, color = 'b') plt.show()
The preceding script will produce the following graph:

How it works...
The bar chart for the female population (in red) is plotted as usual. However, the bar chart for the male population (in blue) has its bar extending to the left rather than the right. Indeed, the lengths of the bars for the blue bar chart are negative values. Rather than editing the input values, we use a list comprehension to negate values for the male population bar chart.
- 軟件項目管理(第2版)
- Vue.js快跑:構建觸手可及的高性能Web應用
- INSTANT Sencha Touch
- JavaScript:Moving to ES2015
- Unity Game Development Scripting
- Swift語言實戰精講
- Application Development with Parse using iOS SDK
- R的極客理想:量化投資篇
- Java高手是怎樣煉成的:原理、方法與實踐
- Go Systems Programming
- SQL Server 2014 Development Essentials
- Building Web and Mobile ArcGIS Server Applications with JavaScript(Second Edition)
- H5頁面設計與制作(全彩慕課版·第2版)
- Visual FoxPro程序設計實驗教程
- Building E-Commerce Solutions with WooCommerce(Second Edition)