python画统计图代码_Python使用统计函数绘制简单图形实例代码

前言

Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQt 和 wxPython。

用matplotlib绘制一些大家比较熟悉又经常混淆的统计图形,掌握这些统计图形可以对数据可视化有一个深入理解。

Windows 系统安装 Matplotlib

进入到 cmd 窗口下,执行以下命令:

python -m pip install -U pip setuptools

python -m pip install matplotlib

Linux 系统安装 Matplotlib

可以使用 Linux 包管理器来安装:

Debian / Ubuntu:

sudo apt-get install python-matplotlib

Fedora / Redhat:

sudo yum install python-matplotlib

Mac OSX 系统安装 Matplotlib

Mac OSX 可以使用 pip 命令来安装:

sudo python -mpip install matplotlib

安装完后,你可以使用 python -m pip list 命令来查看是否安装了 matplotlib 模块。

$ python -m pip list | grep matplotlib

matplotlib (1.3.1)

1.函数bar()--用于绘制柱状图

在x轴上绘制定性数据的分布特征

import matplotlib as mpl

import matplotlib.pyplot as plt

mpl.rcParams["font.sans-serif"]=["SimHei"]

mpl.rcParams["axes.unicode_minus"]=False

x=[1,2,3,4,5,6,7,8]

y=[3,1,4,5,8,9,7,2]

plt.bar(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/")

plt.xlabel("箱子编号")

plt.ylabel("箱子重量(kg)")

plt.show()

201951590022085.jpg?201941590502.

2、函数barh()--用于绘制条形图

在y轴上绘制定性数据的分布特征

import matplotlib as mpl

import matplotlib.pyplot as plt

mpl.rcParams["font.sans-serif"]=["SimHei"]

mpl.rcParams["axes.unicode_minus"]=False

x=[1,2,3,4,5,6,7,8]

y=[3,1,4,5,8,9,7,2]

plt.barh(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/")

plt.xlabel("箱子编号")

plt.ylabel("箱子重量(kg)")

plt.show()

201951590141403.jpg?201941591493.

3、函数hist()--用于绘制直方图

在x轴上绘制定量数据的分布特征

import matplotlib as mpl

import matplotlib.pyplot as plt

import numpy as np

mpl.rcParams["font.sans-serif"]=["SimHei"]

mpl.rcParams["axes.unicode_minus"]=False

#set test scores

boxWeight = np.random.randint(0,10,100)

x = boxWeight

#plot histogram

bins = range(0,11,1)

plt.hist(x,bins=bins,

color="g",

histtype="bar",

rwidth=1,

alpha=0.6)

#set x,y-axis label

plt.xlabel("箱子重量(kg)")

plt.ylabel("销售数量(个)")

plt.show()

201951590231734.jpg?20194159238

4.函数pie()--用于绘制饼图

绘制定性数据的不同类别的百分比

import matplotlib as mpl

import matplotlib.pyplot as plt

mpl.rcParams["font.sans-serif"]=["SimHei"]

mpl.rcParams["axes.unicode_minus"]=False

kinds ="简易箱","保温箱","行李箱","密封箱"

colors = ["#e41a1c","#377eb8","#4daf4a","#984ea3"]

soldNums = [0.05,0.45,0.15,0.35]

#pie chart

plt.pie(soldNums,

labels=kinds,

autopct="%3.1f%%",

startangle=60,

colors=colors)

plt.title("不同类型箱子的销售数量占比")

plt.show()

201951590317247.jpg?20194159324

5.函数polar()--用于绘制极线图

在极坐标图上绘制折线图

import matplotlib.pyplot as plt

import numpy as np

barSlices = 12

theta = np.linspace(0.0,2*np.pi,barSlices,endpoint=False)

r = 30*np.random.rand(barSlices)

plt.polar(theta,r, #theta每个标记所在射线与极径的夹角,r每个标记到原点的距离

color="chartreuse",

linewidth=2,

marker="*",

mfc="b",

ms=10)

plt.show()

201951590401226.jpg?20194159410

6.函数scatter()--用于绘制气泡图

二维数据借助气泡图大小展示三维数据

import matplotlib.pyplot as plt

import matplotlib as mpl

import numpy as np

a = np.random.randn(100)

b = np.random.randn(100)

#colormap:RdYlBu

plt.scatter(a,b,s=np.power(10*a+20*b,2),#s散点标记的大小

c=np.random.rand(100),#c散点标记的颜色

cmap=mpl.cm.RdYlBu,#将浮点数映射成颜色的颜色映射表

marker='o')

plt.show()

201951590458492.jpg?2019415955

7.函数stem()--用于绘制棉棒图

绘制离散的有序数据

import matplotlib.pyplot as plt

import numpy as np

x = np.linspace(0.5,2*np.pi,20)

y = np.random.randn(20)

plt.stem(x,y,linefmt="-.",markerfmt="o",basefmt="-")

linefmt棉棒的样式、markerfmt棉棒末端的样式、basefmt指定基线的样式

plt.show()

201951590923601.jpg?20194159930

8.函数boxplot()--用于绘制箱型图

绘制箱型图

import matplotlib.pyplot as plt

import matplotlib as mpl

import numpy as np

mpl.rcParams["font.sans-serif"]=["SimHei"]

mpl.rcParams["axes.unicode_minus"]=False

x = np.random.randn(1000)

plt.boxplot(x)

plt.xticks([1],["随机数生成器AlphaRM"])

plt.ylabel("随机数值")

plt.title("随机数生成器抗干扰能力的稳定性")

plt.grid(axis="y",ls=":",lw=1,color="gray",alpha=0.4)

plt.show()

201951591004339.jpg?201941591011

9.函数errorbar()--用于绘制误差棒图

绘制y轴方向或是x轴方向的误差范围

import matplotlib.pyplot as plt

import numpy as np

x = np.linspace(0.1,0.6,6)

y = np.exp(x)

plt.errorbar(x,y,fmt="bo:",yerr=0.2,xerr=0.02)

plt.xlim(0,0.7)

plt.show()

201951591114192.jpg?201941591121

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/336359.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux系统打开m3u8文件,M3U8 文件扩展名: 它是什么以及如何打开它?

M3U8 疑难解答打开 M3U8 文件过程中所遇到的常见问题Microsoft Windows Media Player 已删除尝试打开 M3U8 文件时,您收到错误 “无法打开 M3U8 文件类型”。 通常,%%os%% 中会出现这种情况,因为 Microsoft Windows Media Player 未安装在你的…

r语言 C4.5 剪枝是用什么算法_决策树,逻辑回归,PCA算法面经

目录决策树简述决策树原理?为什么要对决策树进行减枝?如何进行减枝?简述决策树的生成策略PCA简述主成分分析PCA工作原理,以及PCA的优缺点?PCA中有第一主成分、第二主成分,它们分别是什么,又是如…

视图中::text_新CalendarFX视图:MonthGridView!

视图中::text我和我的团队最近开始为CalendarFX创建新视图,其最初目标是在垂直栏中显示整年。 该视图的名称是MonthGridView。 与往常一样,编码时目标略有变化。 该视图现在可以显示任意数量的月份,并且可以在前面或后面添加额外的月份。 现在…

linux 内核 性能,Linux内核十个版本性能对比

【IT168 评论】从2008年1月底至今,Linux Kernel系统内核已经先后升级了十次,版本号也从2.6.24上升到2.6.33,并且下个版本2.6.34也已进入开发阶段。今天我们就看看过去两年内这十个版本在性能上有何差异。测试平台是一套工作站系统&#xff0c…

应用程序缓存_应用程序模块和实体缓存

应用程序缓存任何具有ADF业务组件基础知识的ADF开发人员都应该熟悉下图: 它代表运行时ADF业务组件的核心构建块。 有一个包含视图对象实例的根应用程序模块实例。 视图对象实例可能由存储在实体集合或换句话说就是实体缓存中的实体对象备份。 根应用程序模块可能还…

【开源项目】超级播放器1.0

面向对象开发的五大基本原则 单一职责 各个模块相对独立,优点一:在修改其中某个模块的时候不会对其他模块造成影响;优点二:可以对各个模块进行单独的测试;例如解封装模块和解码模块相互独立设计。 开闭原则 对扩展…

linux c 数据写入硬盘分区,Linux操作篇之分区/磁盘扩容(一)

在实际工作中,系统的运行会产生大量的日志 、临时、以及生产文件等数据。所以对磁盘空间也是有一定要求的。但在前期工作中,可能不会需要太大的空间,但是随着后期的使用,存储空间需求很大。这个时候进行扩容就可以了。一般情况下&…

js mztreeview 双击事件_Mac下的Node.js安装教程

前言更多详情,请访问我的 个人博客。什么是Node.jsNodeJS官网上的介绍:Node.js is a platform built on Chromes JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model …

visual2019没有勾选的在如何加入_发票管理系统完成升级,勾选认证平台改头换面,你所有的问题都在这里!...

发票系统2.0版上线为了进一步优化增值税发票系统,提高用户体验,根据国家税务总局安排部署,我省将于2019年11月1日对增值税发票管理系统进行全面升级改造为增值税发票管理系统2.0版。增值税发票综合服务平台是现有增值税发票选择确认平台的升级…

linux 多线程实现倒计时,Linux用脚本实现“时分秒“倒计时功能

1.怎样实现“时分秒“倒计时在Linux下,脚本的完成相对于C语言来说稍微随意一点,可以按照字的想法写,只要有逻辑就可以了。示例:注意:clean的功能这个命令将会刷新屏幕,本质上只是让终端显示页向后翻了一页&…

百分比单位始终根据父元素相应值来计算_CSS Viewport 单位,很多人还不知道使用它来快速布局!...

**CSS Viewport units(视口单位)**在过去几年已经出现了,随着时间的推移,越来越多的开发人员开始使用它们。它们的好处在于为我们提供了一种不需要使用J avaScript 就能以动态的方式调整大小的方法。而且,如果它失效,也有很多备用…

linux macos 界面对比,GNOME 3与Mac OS X 10.7 (Lion)的纵览模式比较

在Twitter上与ibuick同学聊了一些Mac OS X新的设计,还有GNOME等。我突然意识到,Apple并不是引领一切的,很多方面,它甚至是向Linux下的GNOME、KDE学来的(比如出现于Leopard的Space)。更有意思的是,前些日子我刚玩过最新…

【音视频安卓开发 (四)】AndroidStudio项目配置权限、jni库路径、ABI

读写权限 权限(版本) 添加jni用到库所在的路径 设置cmake和NDK参数 cmake项目配置

犀牛重建曲面_【教程】Rhino犀牛面包机建模教学(含模型领取)

建模渲染教学视频可关注◾B站:卓尔谟工业设计小站;◾视频号:学犀牛网校教程:戎尚老师 / 编辑:老白建模步骤01、导入背景,画出面包机半边弧线并镜像;02、对照侧视图高度,用线拉成体&a…

selenium架构_Selenium测试的干净架构

selenium架构在此博客文章中,我想介绍一种具有最佳设计模式的Selenium测试的简洁架构:页面对象,页面元素(通常称为HTML包装器)以及自行开发的非常小巧的框架。 该体系结构不限于示例中使用的Java,也可以以任…

C++ 【随想录】(四)【Makefile】

编译流程 预处理 gcc -E test.c -o test.i test.c源码进行预处理,预处理后停止编译,预处理后文件体积会变大,且为文本格式 编译 gcc -S test.i -o test.s 编译预处理的文件 汇编 gcc -c test.s -o test.o .s转成二进制文件 链接 gcc te…

mfc从文件中读取数据_Python 中的 bytes、str 以及 unicode 区别

从Python发展历史谈起Python3和Python2表示字符序列的方式有所不同。Python3字符序列的两种表示为byte和str。前者的实例包含原始的8位值,即原始的字节;后者的实例包括Unicode字符。Python2字符序列的两种表示为str和unicode。与Python3不同的是&#xf…

linux字符雨,linux周记

shell脚本基础格式要求:首行shebaang机制#!/bin/bash#!/usr/bin/python#!/usr/bin/perlshell脚本用途:自动化常用命令执行系统管理和故障排除创建简单的应用程序处理文本或文件bash中变量的种类局部变量:生效范围为当前shell进程;…

【音视频安卓开发 (一)】AndroidStudio项目配置权限、jni库路径、ABI、Cmake

cmake项目配置 # For more information about using CMake with Android Studio, read the # documentation: https://d.android.com/studio/projects/add-native-code.html# Sets the minimum version of CMake required to build the native library.cmake_minimum_require…