Python中matplotlib如何绘制经典的饼图和条形图
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,小编给大家分享一下Python中matplotlib如何绘制经典的饼图和条形图,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧
千家信息网最后更新 2025年01月18日Python中matplotlib如何绘制经典的饼图和条形图
小编给大家分享一下Python中matplotlib如何绘制经典的饼图和条形图,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
matplotlib是基于numpy的一套Python工具包。这个包提供了丰富的数据绘图工具,主要用于绘制一些统计图形。你可以找到很多各式各样的 例子:
通过数据绘图,我们可以将枯燥的数字转换成容易被人们接受的图表,从而让人留下更加深刻的印象。实际上,早在一百多年前, 南丁格尔就曾经用统计图形来说服英国政府,以改善军队的卫生状况。
我们将以GDP数据为例子,看看如何绘制经典的饼图和条形图。
数据
下面是我们要使用的数据,为2011年GDP前十的国家以及其具体的GDP:
USA 15094025China 11299967India 4457784Japan 4440376Germany 3099080Russia 2383402Brazil 2293954UK 2260803France 2217900Italy 1846950
饼图
我们先来绘制饼图 (pie plot)。饼图适用于表达各个国家GDP所占的百分比。每一小块的面积代表了占比的多少:
具体代码如下,可以看到我们主要使用了matplotlib.pyplot工具包:
# Make a pie chart# This script is written by Vamei, http://www.cnblogs.com/vamei# you may freely use it.import matplotlib.pyplot as plt# quants: GDP# labels: country namelabels = []quants = []# Read datafor line in file('../data/major_country_gdp'): info = line.split() labels.append(info[0]) quants.append(float(info[1]))# make a square figureplt.figure(1, figsize=(6,6))# For China, make the piece explode a bitdef explode(label, target='China'): if label == target: return 0.1 else: return 0expl = map(explode,labels)# Colors used. Recycle if not enough.colors = ["pink","coral","yellow","orange"]# Pie Plot# autopct: format of "percent" string;plt.pie(quants, explode=expl, colors=colors, labels=labels, autopct='%1.1f%%',pctdistance=0.8, shadow=True)plt.title('Top 10 GDP Countries', bbox={'facecolor':'0.8', 'pad':5})plt.show()
条形图
下面我们尝试一下条形图(bar plot)。用每个长条的高度代表每个国家的GDP,长条越高,GDP值越高:
代码如下:
"""Make a pie chartThis script is written by Vamei, http://www.cnblogs.com/vameiyou may freely use it."""import matplotlib.pyplot as pltimport numpy as np# quants: GDP# labels: country namelabels = []quants = []# Read datafor line in file('../data/major_country_gdp'): info = line.split() labels.append(info[0]) quants.append(float(info[1]))width = 0.4ind = np.linspace(0.5,9.5,10)# make a square figurefig = plt.figure(1, figsize=(12,6))ax = fig.add_subplot(111)# Bar Plotax.bar(ind-width/2,quants,width,color='coral')# Set the ticks on x-axisax.set_xticks(ind)ax.set_xticklabels(labels)# labelsax.set_xlabel('Country')ax.set_ylabel('GDP (Billion US dollar)')# titleax.set_title('Top 10 GDP Countries', bbox={'facecolor':'0.8', 'pad':5})plt.show()
该代码中我们利用了ax对象,以便控制刻度以及刻度所对应的国家名。这与我们在pie plot所做的有些不同(pie plot也可以这样实现,只是没有必要而已)。
以上是"Python中matplotlib如何绘制经典的饼图和条形图"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
条形
数据
国家
经典
代码
工具
篇文章
代表
例子
内容
刻度
图形
工具包
长条
绘图
统计
不同
卫生
必要
枯燥
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广东综合软件开发费用
sql如何连接pb数据库
如何做好网络安全工作周报
数据库系统概率第5版电子课本
宣汉职专网络安全直播
卡巴斯基数据库过期无法更新
糖豆人咋看服务器
网站服务器一般放在汇聚层
软件开发应注意哪些违法行为
互联网高科技类产品有哪些
斗地主软件开发价位
服务器密码复杂点
河南省祟杰网络技术有限公司
mysql数据库排名前3名
服务器堆着放有什么隐患
香港cn2服务器免实名
手机短信软件开发
岐黄软件开发公司
服务器统一管理工具
山东项目软件开发如何收费
捂晕扛走服务器之家
全球电子元器件数据库账号被封
温岭软件开发品牌
谁有卖小米云服务器的
计算机三级网络技术题库有多少题
路由器的radius服务器ip是什么意思
军队装备数据库建设
碎片时间表软件开发
软件开发外包数据
机器学习模型服务器