文档章节

python数据可视化----绘制各种图形

南寻
 南寻
发布于 2017/06/05 22:20
字数 681
阅读 4021
收藏 204
点赞 8
评论 5

1.环境

系统:windows10

python版本:python3.6.1

使用的库:matplotlib,numpy

2.numpy库产生随机数几种方法

import numpy as np
numpy.random
rand(d0, d1, ..., dn)

In [2]: x=np.random.rand(2,5)

In [3]: x
Out[3]:
array([[ 0.84286554,  0.50007593,  0.66500549,  0.97387807,  0.03993009],
       [ 0.46391661,  0.50717355,  0.21527461,  0.92692517,  0.2567891 ]])

randn(d0, d1, ..., dn)查询结果为标准正态分布

In [4]: x=np.random.randn(2,5)

In [5]: x
Out[5]:
array([[-0.77195196,  0.26651203, -0.35045793, -0.0210377 ,  0.89749635],
       [-0.20229338,  1.44852833, -0.10858996, -1.65034606, -0.39793635]])

randint(low,high,size)

生成low到high之间(半开区间 [low, high)),size个数据

In [6]: x=np.random.randint(1,8,4)

In [7]: x
Out[7]: array([4, 4, 2, 7])

random_integers(low,high,size)

生成low到high之间(闭区间 [low, high)),size个数据

In [10]: x=np.random.random_integers(2,10,5)

In [11]: x
Out[11]: array([7, 4, 5, 4, 2])

3.散点图

x x轴
y y轴
s   圆点面积
c   颜色
marker  圆点形状
alpha   圆点透明度                #其他图也类似这种配置
N=50
# height=np.random.randint(150,180,20)
# weight=np.random.randint(80,150,20)
x=np.random.randn(N)
y=np.random.randn(N)
plt.scatter(x,y,s=50,c='r',marker='o',alpha=0.5)
plt.show()

4.折线图

x=np.linspace(-10000,10000,100) #将-10到10等区间分成100份
y=x**2+x**3+x**7
plt.plot(x,y)
plt.show()

折线图使用plot函数

5.条形图

N=5
y=[20,10,30,25,15]
y1=np.random.randint(10,50,5)
x=np.random.randint(10,1000,N)
index=np.arange(N)
plt.bar(left=index,height=y,color='red',width=0.3)
plt.bar(left=index+0.3,height=y1,color='black',width=0.3)
plt.show()

orientation设置横向条形图

N=5
y=[20,10,30,25,15]
y1=np.random.randint(10,50,5)
x=np.random.randint(10,1000,N)
index=np.arange(N)
# plt.bar(left=index,height=y,color='red',width=0.3)
# plt.bar(left=index+0.3,height=y1,color='black',width=0.3)
#plt.barh() 加了h就是横向的条形图,不用设置orientation
plt.bar(left=0,bottom=index,width=y,color='red',height=0.5,orientation='horizontal')
plt.show()

6.直方图

m1=100
sigma=20
x=m1+sigma*np.random.randn(2000)
plt.hist(x,bins=50,color="green",normed=True)
plt.show()

# #双变量的直方图
# #颜色越深频率越高
# #研究双变量的联合分布
#双变量的直方图
#颜色越深频率越高
#研究双变量的联合分布
x=np.random.rand(1000)+2
y=np.random.rand(1000)+3
plt.hist2d(x,y,bins=40)
plt.show()

7.饼状图

#设置x,y轴比例为1:1,从而达到一个正的圆
#labels标签参数,x是对应的数据列表,autopct显示每一个区域占的比例,explode突出显示某一块,shadow阴影
labes=['A','B','C','D']
fracs=[15,30,45,10]
explode=[0,0.1,0.05,0]
#设置x,y轴比例为1:1,从而达到一个正的圆
plt.axes(aspect=1)
#labels标签参数,x是对应的数据列表,autopct显示每一个区域占的比例,explode突出显示某一块,shadow阴影
plt.pie(x=fracs,labels=labes,autopct="%.0f%%",explode=explode,shadow=True)
plt.show()

8.箱型图

import matplotlib.pyplot as plt
import numpy as np
data=np.random.normal(loc=0,scale=1,size=1000)
#sym 点的形状,whis虚线的长度
plt.boxplot(data,sym="o",whis=1.5)
plt.show()
#sym 点的形状,whis虚线的长度

 

github地址:https://github.com/nanxung/python-.git

码云地址:https://git.oschina.net/nanxun/pythonshujukeshihuajiantu.git

© 著作权归作者所有

共有 人打赏支持
南寻
粉丝 60
博文 90
码字总数 35772
作品 0
朝阳
程序员
加载中

评论(5)

cywymch
cywymch
不错
iture
iture
不错
milin
milin
demo里面有很多,自己查看下
功夫在墙外
功夫在墙外
像这样的事情,查官方文档不就是了吗?
开源中国首席监管官Wan
开源中国首席监管官Wan
不错啊
Python 调用 matplotlib 实现交互式数据可视化图表案例

交互式的数据可视化图表是 New IT 新技术的一个应用方向,在过去,用户要在网页上查看数据,基本的实现方式就是在页面上显示一个表格出来,的而且确,用表格的方式来展示数据,显示的数据量会...

xjtuhit ⋅ 06/11 ⋅ 0

4.python数据分析与展示-----Matplotlib库入门

1.Matplotlib库介绍 Python优秀的数据 可视化第三方库 2.Matplotlib库的使用 Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发,matplotlib.pyplot是绘制各类可视化图形的命令子...

bxg1065283526 ⋅ 04/29 ⋅ 0

【python数据挖掘课程】二十三.时间序列金融数据预测及Pandas库详解

这是《Python数据挖掘课程》系列文章,也是我上课内容及书籍中的一个案例。本文主要讲述时间序列算法原理,Pandas扩展包基本用法以及Python调用statsmodels库的时间序列算法。由于作者数学比...

eastmount ⋅ 05/09 ⋅ 0

import PIL (图像处理库)使用方法

PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。 from PIL import Image, ImageDraw Image 对于图像的各种操作 ImageDraw 模块提供了图像对象的简单2D绘制。用户可...

csdnhuaong ⋅ 05/30 ⋅ 0

Python 绘图库 Matplotlib 入门教程

原文出处:强波的技术博客 Matplotlib是一个Python语言的2D绘图库,它支持各种平台,并且功能强大,能够轻易绘制出各种专业的图像。本文是对它的一个入门教程。 运行环境 由于这是一个Pytho...

强波的技术博客 ⋅ 04/16 ⋅ 0

Python Matplotlib 绘图使用指南 (附代码)

雷锋网按:本文为雷锋字幕组编译的技术博客,原标题 Matplotlib Plotting Guide, 作者为 Prince Grover。 翻译 | 李振 于志鹏 整理 | 凡江 大多数人不会花大量时间去学 matplotlib 库,仍然...

雷锋字幕组 ⋅ 05/22 ⋅ 0

手把手 | 哇!用R也可以跑Python了

     大数据文摘作品   编译:大茜、钱天培   R还是Python?   真是个千古难题!   如果你主要从事数据分析、统计建模和可视化,R大概是你的不二之选。但如果你还想来搞点深度学...

大数据文摘 ⋅ 04/19 ⋅ 0

Python VS R,哪个更适合开发者?

21CTO社区导读:Python和R同时出现在20世纪九十年代。它为数据科学家提供了大量的数据模型操作的能力。在发展了30年后,Python与R开始出现不同的爱好者阵营。 90年代出现了互联网,这一事物永...

21CTO ⋅ 04/28 ⋅ 0

入门数据分析,从python开始

Python是目前学习数据分析课程中,非常重要的一块,也是目前非常受行业欢迎的。因此,学习非常重要,下面是Python学习的一些重要步骤和知识! 步骤1:熟悉Python 对数据科学,Python和R都是不...

weixin_41852491 ⋅ 05/28 ⋅ 0

请看罗永浩先生如何吹牛他的Excel

来来,大家先看一个段子: 欲知详情,想看视频: 【锤子科技】2018鸟巢新品发布会视频(Excel部分)-罗永浩-老罗 看完罗永浩先生关于他Excel操作的视频,我只想呵呵一笑。我很想给他这段视频...

EasyCharts ⋅ 05/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

对于程序员的招聘问题,作为软件人的一些吐槽和建议

作为软件人,找工作有时候似乎挺苦逼的。 说真的,让我去掉前面这句中“似乎”二字吧。就是苦逼!很多人都曾抱怨处在招聘的一方很糟糕——我们没有任何可靠的方式来甄别会写代码并且写得好的...

老道士 ⋅ 22分钟前 ⋅ 0

HDFS原理学习

一、概述 1、 Hadoop整合了众多的文件系统,首先提供了一个高层的文件系统抽象org.apache.hadoop.fs.FileSystem。然后有各个文件系统的实现类。 2、Hadoop是JAVA编写的,不同文件系统之间的交...

cjxcloud ⋅ 26分钟前 ⋅ 0

Linux下MySQL表名不区分大小写的设置方法(抄袭别人的)

Linux下MySQL表名不区分大小写的设置方法 MySQL表名不区分大小写的设置方法 在用centox安装mysql后,把项目的数据库移植了过去,发现一些表的数据查不到,排查了一下问题,最后发现是表名的大...

随风而浮沉 ⋅ 31分钟前 ⋅ 0

ubuntu下安装宋体simsun

sudo cp simsun.ttc /usr/share/fonts cd /usr/share/fonts sudo chmod 644 simsun.ttc 更新字体缓存: 代码: sudo mkfontscale 代码: sudo mkfontdir 代码: sudo fc-cache -fsv 安装chrome扩......

wangxuwei ⋅ 32分钟前 ⋅ 0

利用 ssh 传输文件

Linux 下一般可以用 scp 命令通过 ssh 传送文件: #把服务器上的 /home/user/a.txt 发送到本机的 /var/www/local_dir 目录下scp username@servername:/home/user/a.txt /var/www/local_dir...

大灰狼时间 ⋅ 42分钟前 ⋅ 0

web3j教程:android和java程序员如何使用web3j开发区块链以太坊

如何使用web3j为Java应用或Android App增加以太坊区块链支持,本教程内容即涉及以太坊中的核心概念,例如账户管理包括账户的创建、钱包创建、交易转账,交易与状态、智能合约开发与交互、过滤...

智能合约 ⋅ 今天 ⋅ 0

web3j开发java或android以太坊智能合约快速入门

web3j简介 web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 可以通过它进行以太坊区块链...

笔阁 ⋅ 今天 ⋅ 0

一起读书《深入浅出nodejs》-异步I/O

异步I/O “异步”这个名词其实很早就诞生了,但它大规模流行却是在Web 2.0浪潮中,它伴随着AJAX的第一个A(Asynchronous)席卷了Web。 为什么要异步I/O 关于异步I/O为何在Node里如此重要,这与...

小草先森 ⋅ 今天 ⋅ 0

JVM各种问题

1、如果启动什么都不设,会怎样? 先来看一个命令 [root@localhost bin]# java -XX:+PrintCommandLineFlags -version -XX:InitialHeapSize=29899008 -XX:MaxHeapSize=478384128 -XX:+PrintCo......

算法之名 ⋅ 今天 ⋅ 0

SAS笔记-宏2

宏是一种文本,一般来说其编译是在程序执行之前。 宏变量的创建 %let语句 %let macro_variables = text; %let是常见的宏变量建立方式,其编译就在执行前。如下例中,想要宏变量test等于数据集...

tonorth123 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部