今天我们再来讲解一下Python使用Plotly绘图工具如何绘制直方图

使用plotly绘制直方图需要用到graph_objs包中的Histogram函数

我们将数据赋值给函数中的x变量,x = data

即可绘制出直方图如果将数据赋值给y变量,

则会,绘制出水平直方图。

下面我们来看个基本例子

import plotly as py
import plotly.graph_objs as go
import numpy as np pyplt = py.offline.plot
s1 = np.random.RandomState(1)
x = s1.randn(1000)
data = [go.Histogram(x=x,
histnorm = 'probability')]
# y = x 水平直方图,histnorm='probability' y轴显示概率,没有则显示数目
pyplt(data, filename='tmp/1.html')

运行上诉代码,我们可以得到一个如上图所示的基本直方图

数据是有numpy随机生成的

histnorm是Histogram函数的另外一个属性,默认状态下表示直方图

纵坐标落入区间内的样本数目

如果我们设定histnorm = 'probability' 则纵坐标变为落入区间内的样本频率

重叠垂直直方图

我们在说说重叠垂直直方图的绘制

需要在Layout中设置barmode属性,将其改为‘overlay’

如果我们不对其进行设置,会出现Plotly默认将两个直方图的柱状宽度强制变窄

以满足重叠部分的显示需求。

下面我们来看下,数据有Numpy随机生成

import plotly as py
import plotly.graph_objs as go
import numpy as np pyplt = py.offline.plot
s1 = np.random.RandomState(1)
x0 = s1.randn(1000)
x1 = s1.chisquare(5,1000) trace1 = go.Histogram(
x = x0,
histnorm = 'probability',
opacity = 0.75
)
trace2 = go.Histogram(
x = x1,
histnorm = 'probability',
opacity = 0.75
) data = [trace1, trace2]
layout = go.Layout(barmode='overlay')
fig = go.Figure(data = data, layout = layout)
pyplt(fig, filename='tmp/1.html')

运行上诉代码,我们可以得到,如图所示的重叠直方图,蓝色部分和橘黄色部分重叠的位置显示。

层叠直方图

绘制层叠直方图同样需要设置barmode属性,将其设置为‘stack’

下面我们看一下使用Numpy随机生成相同的正态分布数据图的叠加效果

import plotly as py
import plotly.graph_objs as go
import numpy as np
pyplt = py.offline.plot s1 = np.random.RandomState(1)
x0 = s1.randn(1000)
x1 = s1.randn(1000) trace0 = go.Histogram(
x=x0
)
trace1 = go.Histogram(
x=x1
)
data = [trace0, trace1]
layout = go.Layout(barmode='stack')
fig = go.Figure(data=data, layout=layout) pyplt(fig, filename='tmp/1.html')

运行上诉代码,我们得到了如上图所示的图例,可以看到,两部分重叠在一个区域内

今天就先想到这里哈,感谢大家阅读,欢迎点赞转发。

Python使用Plotly绘图工具,绘制直方图的更多相关文章

  1. Python使用Plotly绘图工具,绘制面积图

    今天我们来讲一下如何使用Python使用Plotly绘图工具,绘制面积图 绘制面积图与绘制散点图和折线图的画法类似,使用plotly graph_objs 中的Scatter函数,不同之处在于面积图对 ...

  2. Python使用Plotly绘图工具,绘制饼图

    今天我们来学习一下如何使用Python的Plotly绘图工具,绘制饼图 使用Plotly绘制饼图的方法,我们需要使用graph_objs中的Pie函数 函数中最常用的两个属性values,用于赋值给需 ...

  3. Python使用Plotly绘图工具,绘制甘特图

    今天来讲一下如何使用Python 的绘图工具Plotly来绘制甘特图的方法 甘特图大家应该了解熟悉,就是通过条形来显示项目的进度.时间安排等相关情况的. 我们今天来学习一下,如何使用ployly来绘制 ...

  4. Python使用Plotly绘图工具,绘制气泡图

    今天来讲讲如何使用Python 绘图工具,Plotly来绘制气泡图. 气泡图的实现方法类似散点图的实现.修改散点图中点的大小,就变成气泡图. 实现代码如下: import plotly as py i ...

  5. Python使用Plotly绘图工具,绘制散点图、线形图

    今天在研究Plotly绘制散点图的方法 使用Python3.6 + Plotly Plotly版本2.0.0 在开始之前先说说,还需要安装库Numpy,安装方法在我的另一篇博客中有写到:https:/ ...

  6. Python使用Plotly绘图工具,绘制水平条形图

    水平条形图与绘制柱状图类似,大家可以先看看我之前写的博客,如何绘制柱状图 水平条形图需要在Bar函数中设置orientation= 'h' 其他的参数与柱状图相同.也可以通过设置barmode = ' ...

  7. Python使用Plotly绘图工具,绘制柱状图

    使用Plotly绘制基本的柱状图,需要用到的函数是graph_objs 中 Bar函数 通过参数,可以设置柱状图的样式. 通过barmod进行设置可以绘制出不同类型的柱状图出来. 我们先来实现一个简单 ...

  8. Plotly绘图工具(多用于统计)

    作者:桂. 时间:2017-04-23  23:52:14 链接:http://www.cnblogs.com/xingshansi/p/6754769.html 前言 无意中考到一个小工具,网址为: ...

  9. python Matplotlib 系列教程(三)——绘制直方图和条形图

    在本章节我们将学习如何绘制条形图和直方图 条形图与直方图的区别:首先,条形图是用条形的长度表示各类别频数的多少,其宽度(表示类别)则是固定的: 直方图是用面积表示各组频数的多少,矩形的高度表示每一组的 ...

随机推荐

  1. 学习 JavaScript (七) 内存问题

    内存问题是 JavaScript 比较底层的东西,依葫芦画瓢学会了怎么使用变量,但是对于内存的概念依然模糊,今天让我们一起来了解一下内存在这门语言是怎么样的存在. 内存在不同类型的数值面前表现有很大的 ...

  2. Docker最全教程之使用Docker搭建Java开发环境(十七)

    前言 Java是一门面向对象的优秀编程语言,市场占有率极高,但是在容器化实践过程中,发现官方支持并不友好,同时与其他编程语言的基础镜像相比(具体见各语言镜像比较),确实是非常臃肿. 本篇仅作探索,希望 ...

  3. 来聊一聊不low的Linux命令——find、grep、awk、sed

    前几天面试,被一位面试官嫌弃了"你的Linux命令有点low".被嫌弃也挺正常的,因为我的简历写的我自己都有点看不下去:了解Linux常用命令,如ls,tail -f等命令,基本满 ...

  4. 关于JAVA中Byte类型的取值范围的推论(*零为正数,-128在计算机中的表示方法...)

    先看一段推理<*一切都是在8个比特位的前提下,讨论二进制的符号位,溢出等等,才有意义*> +124:0111 1100 -124:1000 0100 +125:0111 1101 -125 ...

  5. CentOS7中搭建cobbler自动装机服务

    一.实验环境 一台centos7 epel源网址 https://fedoraproject.org/wiki/EPEL?rd=Epel 使用nat模式 二.实验步骤 1.下载epel源后进行文件夹挂 ...

  6. SuperMap iObject入门开发系列七管线横断面分析

    本文是一位好友“托马斯”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢. 管线横断面分析功能是管线系统常见的一个分析功能,地下管线横断面分析的原理,是根据需求,在管线区域画一条横截面线,使其与 ...

  7. ArcPy 将mxd格式转换为msd格式

    在控制程序进行地图服务更新时,如果只是修改MXD中的渲染是不行的,需要写脚本将MXD转换为MSD,替换原有的MSD文件,并重新启动地图服务,这样才能读取到新的渲染方式. 附上Python代码: # - ...

  8. Android中对已安装应用的管理实现

    获取.管理手机中已安装的所有应用信息 1.创建应用的实体类AppInfo,属性有应用的名称.包名.图标.第一次安装时间和版本名称 public class AppInfo { private Stri ...

  9. Microsoft SQL Server 双机热备份,实时同步

    1.两台服务器,主服务器,从服务器,两台服务器都安装SQL Server 2008R2并且安装相同表结构的数据库(需要实时同步的数据库) 2.主服务器数据库安装完毕,打开SQL Server 配置管理 ...

  10. ASP.NET Aries 高级开发教程:使用存储过程(番外篇)

    前言: 发现这个问题,有不少人提起过,所以就简单写成文章吧. 接下来看如何在Aries 框架中使用存储过程,整体步骤和绑定普通视图差不多. 步骤一:新建一个空视图. 可以在SqlCode管理中,创建一 ...