数据分析离不开数据可视化。我们最常用的就是pandas,matplotlib,pyecharts当然还有Tableau,看到一篇文章介绍plotly制图后我也跃跃欲试,查看了相关资料开始学习plotly.

Plotly 是一款用来做数据分析和可视化的在线平台,功能非常强大,可以在线绘制很多图形比如条形图、散点图、饼图、直方图等等。而且还是支持在线编辑,以及多种语言python、javascript、matlab、R等许多API,当然我们这里主要介绍Python语言,可以直接用pip install plotly即可。

plotly可以画出很多媲美Tableau的高质量图,我尝试做了折线图、散点图和直方图,代码如下:

首先导入库

  1. from plotly.graph_objs import Scatter,Layout
  2. import plotly
  3. import plotly.offline as py
  4. import numpy as np
  5. import plotly.graph_objs as go
  6.  
  7. #setting offilne
  8. plotly.offline.init_notebook_mode(connected=True)
  9. # 上面几行代码主要是引用一些库,最重要的一点是要把plotly设置为offline模式,

1.折线图

  1. N = 100
  2. random_x = np.linspace(0,1,N)
  3. random_y0 = np.random.randn(N)+5
  4. random_y1 = np.random.randn(N)
  5. random_y2 = np.random.randn(N)-5
  6.  
  7. #Create traces
  8. trace0 = go.Scatter(
  9. x = random_x,
  10. y = random_y0,
  11. mode = 'markers',
  12. name = 'markers'
  13. )
  14. trace1 = go.Scatter(
  15. x = random_x,
  16. y = random_y1,
  17. mode = 'lines+markers',
  18. name = 'lines+markers'
  19. )
  20. trace2 = go.Scatter(
  21. x = random_x,
  22. y = random_y2,
  23. mode = 'lines',
  24. name = 'lines'
  25. )
  26. data = [trace0,trace1,trace2]
  27. py.iplot(data)
  28. # 随机设置4个参数,x轴的数字和y轴,其中y轴随机3组数据。
  29. # 然后画三种类型的图,trace0是markers,trace1是折线图和markers,trace3是折线图。
  30. # 然后把三种图放在data这个列表里面,调用py.iplot(data)即可。

2.散点图

  1. trace1 = go.Scatter(
  2. y = np.random.randn(500),
  3. mode = 'markers',
  4. marker = dict(
  5. size = 16,
  6. color = np.random.randn(500),
  7. colorscale = 'Viridis',
  8. showscale = True
  9. )
  10. )
  11. data = [trace1]
  12. py.iplot(data,filename='scatter-plot-with-colorscale')
  13. # 这个是mode设置为markers就是散点图,然后marker里面设置一组参数,
  14. # 比如颜色的随机范围,散点的大小,还有图例等等。最后一行里面的filename是在当前目录下生成html文件

3.直方图

  1. trace0 = go.Bar(
  2. x = ['Jan','Feb','Mar','Apr', 'May','Jun',
  3. 'Jul','Aug','Sep','Oct','Nov','Dec'],
  4. y = [20,14,25,16,18,22,19,15,12,16,14,17],
  5. name = 'Primary Product',
  6. marker=dict(
  7. color = 'rgb(49,130,189)'
  8. )
  9. )
  10. trace1 = go.Bar(
  11. x = ['Jan','Feb','Mar','Apr', 'May','Jun',
  12. 'Jul','Aug','Sep','Oct','Nov','Dec'],
  13. y = [19,14,22,14,16,19,15,14,10,12,12,16],
  14. name = 'Secondary Product',
  15. marker=dict(
  16. color = 'rgb(204,204,204)'
  17. )
  18. )
  19. data = [trace0,trace1]
  20. py.iplot(data)

上面的制图只是plotly的冰山一角,都是一些最基本的用法,它还有很多很酷的用法和图形,尤其是跟pandas结合画的图非常漂亮,比如一些股票的K线图,大家有兴趣可以研究研究~

链接:https://plot.ly/python/

可视化神器--Plotly的更多相关文章

  1. 【转】Python 可视化神器-Plotly Express

    转自:https://mp.weixin.qq.com/s/FNpNJSMK5Vs8pwi0PbbBzw 说明:图片无法直接复制,请查看原文 导读:Plotly Express 是一个新的高级 Pyt ...

  2. 地图可视化神器keplergl新增对jupyter lab 3.0的支持

    就在几天前,地图可视化神器kepler.gl面向Python的接口库keplergl迎来了新的0.3.0版本更新. 虽然官方文档还并未及时更新相关的内容说明,但我在快速地试用之后发现,现在的keple ...

  3. 这才是你想要的 Python 可视化神器

    Plotly Express 是一个新的高级 Python 可视化库:它是 Plotly.py 的高级封装,它为复杂的图表提供了一个简单的语法. 受 Seaborn 和 ggplot2 的启发,它专门 ...

  4. Python学习随笔(1)--可视化工具plotly使用

    把数据库某列数据取出来,然后再在本地生成html文件形成可视化视图显示 #!/usr/bin/python# coding=utf-8 import pymysqlimport plotly.plot ...

  5. 推荐:这才是你寻寻觅觅想要的 Python 可视化神器

    Plotly Express 是一个新的高级 Python 可视化库:它是 Plotly.py 的高级封装,它为复杂的图表提供了一个简单的语法. 受 Seaborn 和 ggplot2 的启发,它专门 ...

  6. 如何记录分析你的炼丹流程—可视化神器Wandb使用笔记【1】

    本节主要记录使用wandb记录训练曲线以及上传一些格式的数据将其展示在wandb中以便分析的方法,略过注册安装部分(可使用pip intall wandb安装,注册相关issue可上网搜索),文章着重 ...

  7. Python中的可视化神器:pyecharts

    pyecharts是一款将python与echarts结合的强大的数据可视化工具,本文将为你阐述pyecharts的使用细则 前言 我们都知道python上的一款可视化工具matplotlib,而前些 ...

  8. Python中的可视化神器!你知道是啥吗?没错就是pyecharts!

    pyecharts是一款将python与echarts结合的强大的数据可视化工具,本文将为你阐述pyecharts的使用细则 前言 我们都知道python上的一款可视化工具matplotlib,而前些 ...

  9. 推荐一款Python数据可视化神器

    1. 前言 在日常工作中,为了更直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,人们常常借助可视化帮助我们更好的给他人解释现象,做到一图胜千文的说明效果. 在Python中,常见的数据可视化库有 ...

随机推荐

  1. react源码探索

    react核心部分为 虚拟dom对象 虚拟dom差异化算法 单向数据流渲染 组件生命周期 事件处理 1) 虚拟dom对象: reactDOM.render(args,element); 这个方法第一个 ...

  2. 大雄的elk实践

    目录 一.ElK环境搭建 1.1.elasticsearch 1..kibana 1..logstash二.elk实践 2.1 使用elk分析nginx日志 一.ElK环境搭建   1.1 elast ...

  3. 【阅读笔记】《C程序员 从校园到职场》第六章 配置文件,makefile 文件 (Part 2)

     Contents: 1.配置文件(通常以 ini 结尾) 2.makefile文件 (Linux) PS: 这篇文章的内容,不太理解. 一.配置文件 本文以一个实际的小软件为例,介绍了C语言中配置文 ...

  4. Forth相关IO操作

    body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...

  5. 周强 201771010141《面向对象程序设计(java)》第四周学习总结

    实验目的与要求 (1) 理解用户自定义类的定义: (2) 掌握对象的声明: (3) 学会使用构造函数初始化对象: (4) 使用类属性与方法的使用掌握使用: (5) 掌握package和import语句 ...

  6. Oracle(二)在 Mysql 的基础上学习 Oracle

    毕竟我是先学的mysql,对数据库的一切认知都会有一个先入为主的思想在里面,如果不搞清楚其中的异同,我感觉Oracle我是学不会 了,甚至会把它们混淆.那么,不会mysql的没必要往下看了. 下边第一 ...

  7. Quartz在Spring中动态设置cronExpression

    什么是动态定时任务:是由客户制定生成的,服务端只知道该去执行什么任务,但任务的定时是不确定的(是由客户制定). 这样总不能修改配置文件每定制个定时任务就增加一个trigger吧,即便允许客户修改配置文 ...

  8. HBase和Phoneix使用示例

    HBase操作 基本操作 创建表 Examples: hbase> create 't1', {NAME => 'f1', VERSIONS => 5} hbase> crea ...

  9. java基础(5)内部类

    1 成员内部类的定义和使用 public class Outer { private String name; public class Inner { public void innerMethod ...

  10. CentOS7中使用yum安装Nginx的方法

    最近无意间发现Nginx官方提供了Yum源.因此写个文章记录下. 1.添加源 默认情况Centos7中无Nginx的源,最近发现Nginx官网提供了Centos的源地址.因此可以如下执行命令添加源: ...