chevron_left
Graphs Cookbook
Drawing a bar chartDrawing a box plotDrawing a functionDrawing a histogramDrawing a horizontal lineDrawing a line plotDrawing a normal curveDrawing a scatterplotDrawing a single pointDrawing a stacked bar chartDrawing a vertical lineDrawing arrowsDrawing circlesDrawing empty circlesDrawing error barsDrawing horizontal bar plotsDrawing multiple histograms in one plotNormalizing a histogramPlotting scatter plot with category
0
0
0
new
Drawing a stacked bar chart in Matplotlib
Programming
chevron_rightPython
chevron_rightMatplotlib
chevron_rightCookbooks
chevron_rightGraphs Cookbook
schedule Jul 1, 2022
Last updated Python●Matplotlib
Tags tocTable of Contents
expand_more To draw stacked bar charts in Matplotlib we can use the ax.bar(~)
method.
Examples
To draw a stacked bar chart of favorite colors of primary school, intermediate, and high school students:
fig, ax = plt.subplots()
colors = ["Blue", "Red", "Green"]
#Numpy arrays containing number of students with each favorite colorprimary = np.array([1,2,3]) #number of students with fav color [blue, red, green]intermediate = np.array([2,3,1])high_school = np.array([3,2,1])
#Add the bars. The bottom argument specifies where to start to stack the bar.ax.bar(colors, primary, label="primary")ax.bar(colors, intermediate, bottom=primary, label="intermediate")ax.bar(colors, high_school, bottom=primary + intermediate, label="high school")
#Set the x tick labels and the y-axis labelax.set_xticklabels(colors, rotation=90)ax.set_ylabel("# of Students")
#Add a legendax.legend()
#Show the plotplt.show()
This produces the following output:

Published by Arthur Yanagisawa
Edited by 0 others
Did you find this page useful?
Ask a question or leave a feedback...
0
0
0
Enjoy our search