基于python plotly交互式图表大全

plotly可以制作交互式图表,直接上代码:

import plotly.offline as py
from plotly.graph_objs import Scatter, Layout
import plotly.graph_objs as go
py.init_notebook_mode(connected=True)
import pandas as pd
import numpy as np

In [412]:

#读取数据
df=pd.read_csv('seaborn.csv',sep=',',encoding='utf-8',index_col=0)
#展示数据
df.head()
Out[412]:
Name Type 1 Type 2 Total HP Attack Defense Sp. Atk Sp. Def Speed Stage Legendary
#
1 Bulbasaur Grass Poison 318 45 49 49 65 65 45 1 False
2 Ivysaur Grass Poison 405 60 62 63 80 80 60 2 False
3 Venusaur Grass Poison 525 80 82 83 100 100 80 3 False
4 Charmander Fire NaN 309 39 52 43 60 50 65 1 False
5 Charmeleon Fire NaN 405 58 64 58 80 65 80 2 False

In [413]:

#plotly折线图,trace就代表折现的条数
trace1=go.Scatter(x=df['Attack'],y=df['Defense'])
trace1=go.Scatter(x=[1,2,3,4,5],y=[2,1,3,5,2])
trace2=go.Scatter(x=[1,2,3,4,5],y=[2,1,4,6,7])
py.iplot([trace1,trace2])

#填充区域
trace1=go.Scatter(x=[1,2,3,4,5],y=[2,1,3,5,2],fill="tonexty",fillcolor="#FF0")
py.iplot([trace1])

# 散点图
trace1=go.Scatter(x=[1,2,3,4,5],y=[2,1,3,5,2],mode='markers')
trace1=go.Scatter(x=df['Attack'],y=df['Defense'],mode='markers')
py.iplot([trace1],filename='basic-scatter')

#气泡图
x=df['Attack']
y=df['Defense']
colors = np.random.rand(len(x))#set color equal to a variable
sz =df['Defense']
fig = go.Figure()
fig.add_scatter(x=x,y=y,mode='markers',marker={'size': sz,'color': colors,'opacity': 0.7,'colorscale': 'Viridis','showscale': True})
py.iplot(fig)

#bar 柱状图
df1=df[['Name','Defense']].sort_values(['Defense'],ascending=[0])
data = [go.Bar(x=df1['Name'],y=df1['Defense'])]
py.iplot(data, filename='jupyter-basic_bar')

#组合bar  group
trace1 = go.Bar(x=['giraffes', 'orangutans', 'monkeys'],y=[20, 14, 23],name='SF Zoo')
trace2 = go.Bar(x=['giraffes', 'orangutans', 'monkeys'],y=[12, 18, 29],name='LA Zoo')
data = [trace1, trace2]
layout = go.Layout( barmode='group')
fig = go.Figure(data=data, layout=layout)
py.iplot(fig, filename='grouped-bar')

#组合bar  gstack上下组合
trace1 = go.Bar(x=['giraffes', 'orangutans', 'monkeys'],y=[20, 14, 23],name='SF Zoo')
trace2 = go.Bar(x=['giraffes', 'orangutans', 'monkeys'],y=[12, 18, 29],name='LA Zoo',text=[12, 18, 29],textposition = 'auto')
data = [trace1, trace2]
layout = go.Layout( barmode='stack')
fig = go.Figure(data=data, layout=layout)
py.iplot(fig, filename='grouped-bar')

#饼图
fig = {
 "data": [
  {
   "values": df['Defense'][0:3],
   "labels": df['Name'][0:3],
   "domain": {"x": [0,1]},
   "name": "GHG Emissions",
   "hoverinfo":"label+percent+name",
   "hole": .4,
   "type": "pie"
  }
    ],

 "layout": {
    "title":"Global Emissions 1990-2011",
    "annotations": [
      {
        "font": {"size": 20},
        "showarrow": False,
        "text": "GHG",
        "x": 0.5,
        "y": 0.5
      }
            ]
      }
  }
py.iplot(fig, filename='donut')

# Learn about API authentication here: https://plot.ly/pandas/getting-started
# Find your api_key here: https://plot.ly/settings/api
#雷达图
data = [
  go.Scatterpolar(
   r = [39, 28, 8, 7, 28, 39],
   theta = ['A','B','C', 'D', 'E', 'A'],
   fill = 'toself',
   name = 'Group A'
  ),
  go.Scatterpolar(
   r = [1.5, 10, 39, 31, 15, 1.5],
   theta = ['A','B','C', 'D', 'E', 'A'],
   fill = 'toself',
   name = 'Group B'
  )
]

layout = go.Layout(
 polar = dict(
  radialaxis = dict(
   visible = True,
   range = [0, 50]
  )
 ),
 showlegend = False
)

fig = go.Figure(data=data, layout=layout)
py.iplot(fig, filename = "radar/multiple")

#box 箱子图
df_box=df[['HP','Attack','Defense','Speed']]
data = []
for col in df_box.columns:
  data.append(go.Box(y=df_box[col], name=col, showlegend=True ) )
#data.append( go.Scatter(x= df_box.columns, y=df.mean(), mode='lines', name='mean' ) )
py.iplot(data, filename='pandas-box-plot')

#箱子图加平均线
df_box=df[['HP','Attack','Defense','Speed']]
data = []
for col in df_box.columns:
  data.append(go.Box(y=df_box[col], name=col, showlegend=True) )
data.append( go.Scatter(x= df_box.columns, y=df.mean(), mode='lines', name='mean' ) )
py.iplot(data, filename='pandas-box-plot')

#Basic Horizontal Bar Chart 条形图 plotly条形图
df_hb=df[['Name','Attack','Defense','Speed']][0:5].sort_values(['Attack'],ascending=[1])
data = [
  go.Bar(
    y=df_hb['Name'], # assign x as the dataframe column 'x'
    x=df_hb['Attack'],
    orientation='h',
    text=df_hb['Attack'],
    textposition = 'auto'
  )
]
py.iplot(data, filename='pandas-horizontal-bar')

#直方图Histogram
data = [go.Histogram(x=df['Attack'])]
py.iplot(data, filename='basic histogram')

#distplot
import plotly.figure_factory as ff
hist_data =[df['Defense']]
group_labels = ['distplot']
fig = ff.create_distplot(hist_data, group_labels)
# Add title
fig['layout'].update(title='Hist and Rug Plot',xaxis=dict(range=[0,200]))
py.iplot(fig, filename='Basic Distplot')

# Add histogram data
x1 = np.random.randn(200)-2
x2 = np.random.randn(200)
x3 = np.random.randn(200)+2
x4 = np.random.randn(200)+4 

# Group data together
hist_data = [x1, x2, x3, x4]
group_labels = ['Group 1', 'Group 2', 'Group 3', 'Group 4']
# Create distplot with custom bin_size
fig = ff.create_distplot(hist_data, group_labels,)
# Plot!
py.iplot(fig, filename='Distplot with Multiple Datasets')

好了,以上就是我研究的plotly,欢迎朋友们评论,补充,一起学习!

以上这篇基于python plotly交互式图表大全就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python使用Plotly绘图工具绘制气泡图

    今天来讲讲如何使用Python 绘图工具,Plotly来绘制气泡图. 气泡图的实现方法类似散点图的实现.修改散点图中点的大小,就变成气泡图. 实现代码如下: import plotly as py import plotly.graph_objs as go pyplt = py.offline.plot trace0 = go.Scatter( x=[1, 2, 3, 4, 5, 6, 7], y=[8, 10, 12, 14, 16, 18, 20], mode='markers', mar

  • Python使用plotly绘制数据图表的方法

    导语:使用 python-plotly 模块来进行压测数据的绘制,并且生成静态 html 页面结果展示. 不少小伙伴在开发过程中都有对模块进行压测的经历,压测结束后大家往往喜欢使用Excel处理压测数据并绘制数据可视化视图,但这样不能很方便的使用web页面进行数据展示.本文将介绍使用python-plotly模块来进行压测数据的绘制,并且生成静态html页面方便结果展示. Plotly简介 Plotly是一款使用JavaScript开发的制图工具,提供了与主流数据分析语言交互的API(如:Pyt

  • 详解Python使用Plotly绘图工具,绘制甘特图

    今天来讲一下如何使用Python 的绘图工具Plotly来绘制甘特图的方法 甘特图大家应该了解熟悉,就是通过条形来显示项目的进度.时间安排等相关情况的. 我们今天来学习一下,如何使用ployly来绘制甘特图 绘制甘特图的函数为Plotly.figure_factoryz中create_gantt方法 通过参数事件Task,开始Start,结束Finish的时间的数据来绘制甘特图 import plotly as py import plotly.figure_factory as ff pypl

  • 基于python plotly交互式图表大全

    plotly可以制作交互式图表,直接上代码: import plotly.offline as py from plotly.graph_objs import Scatter, Layout import plotly.graph_objs as go py.init_notebook_mode(connected=True) import pandas as pd import numpy as np In [412]: #读取数据 df=pd.read_csv('seaborn.csv',

  • 基于Python实现交互式文件浏览器

    目录 引子 应用场景 源代码 源代码说明 效果如下所示 引子 在许多应用程序中,需要方便地查看特定文件夹中的所有图片,例如图库管理器.相册应用程序.图片编辑器等.如果手动浏览文件夹并查看每个文件,可能会非常耗时和繁琐.因此,为了提高用户体验和工作效率,这段代码使用 wxPython 库创建了一个包含文件和文件夹的树状结构,并限制树状结构中只显示图片文件.这使得用户可以方便地在树状结构中浏览和选择图片文件,而无需手动搜索和筛选.此外,该程序还提供了一个预览窗格,用于在用户选择图片后显示其缩略图或完

  • Python使用Plotly绘制常见5种动态交互式图表

    目录 启动 动画 太阳图 平行类别 平行坐标图 量表图和指示器 数据可以帮助我们描述这个世界.阐释自己的想法和展示自己的成果,但如果只有单调乏味的文本和数字,我们却往往能难抓住观众的眼球.而很多时候,一张漂亮的可视化图表就足以胜过千言万语.本文将介绍 5 种基于 Plotly 的可视化方法,你会发现,原来可视化不仅可用直方图和箱形图,还能做得如此动态好看甚至可交互. 对数据科学家来说,讲故事是一个至关重要的技能.为了表达我们的思想并且说服别人,我们需要有效的沟通.而漂漂亮亮的可视化是完成这一任务

  • Python matplotlib plotly绘制图表详解

    目录 一.整理数据 二.折线图 三.散点图 四.饼图 五.柱形图 六.点图(设置多个go对象) 七.2D密度图 八.简单3D图 一.整理数据 以300部电影作为数据源 import pandas as pd cnboo=pd.read_excel("cnboNPPD1.xls") cnboo import seaborn as sns import numpy as np import matplotlib as mpl from matplotlib import pyplot as

  • 基于python分析你的上网行为 看看你平时上网都在干嘛

    简介 想看看你最近一年都在干嘛?看看你平时上网是在摸鱼还是认真工作?想写年度汇报总结,但是苦于没有数据?现在,它来了. 这是一个能让你了解自己的浏览历史的Chrome浏览历史记录分析程序,当然了,他仅适用于Chrome浏览器或者以Chrome为内核的浏览器. 在该页面中你将可以查看有关自己在过去的时间里所访问浏览的域名.URL以及忙碌天数的前十排名以及相关的数据图表. 部分截图 代码思路 1. 目录结构 首先,我们先看一下整体目录结构 Code ├─ app_callback.py 回调函数,实

  • 基于Python Dash库制作酷炫的可视化大屏

    目录 介绍 数据 大屏搭建 介绍 大家好,我是小F- 在数据时代,我们每个人既是数据的生产者,也是数据的使用者,然而初次获取和存储的原始数据杂乱无章.信息冗余.价值较低. 要想数据达到生动有趣.让人一目了然.豁然开朗的效果,就需要借助数据可视化. 以前给大家介绍过使用Streamlit库制作大屏,今天给大家带来一个新方法. 通过Python的Dash库,来制作一个酷炫的可视化大屏! 先来看一下整体效果,好像还不错哦. 主要使用Python的Dash库.Plotly库.Requests库. 其中R

  • 基于Python对象引用、可变性和垃圾回收详解

    变量不是盒子 在示例所示的交互式控制台中,无法使用"变量是盒子"做解释.图说明了在 Python 中为什么不能使用盒子比喻,而便利贴则指出了变量的正确工作方式. 变量 a 和 b 引用同一个列表,而不是那个列表的副本 >>> a = [1, 2, 3] >>> b = a >>> a.append(4) >>> b [1, 2, 3, 4] 如果把变量想象为盒子,那么无法解释 Python 中的赋值:应该把变量视作

  • 基于python内置函数与匿名函数详解

    内置函数 Built-in Functions abs() dict() help() min() setattr() all() dir() hex() next() slice() any() divmod() id() object() sorted() ascii() enumerate() input() oct() staticmethod() bin() eval() int() open() str() bool() exec() isinstance() pow() super

  • 基于Python实现的微信好友数据分析

    最近微信迎来了一次重要的更新,允许用户对"发现"页面进行定制.不知道从什么时候开始,微信朋友圈变得越来越复杂,当越来越多的人选择"仅展示最近三天的朋友圈",大概连微信官方都是一脸的无可奈何.逐步泛化的好友关系,让微信从熟人社交逐渐过渡到陌生人社交,而朋友圈里亦真亦幻的状态更新,仿佛在努力证明每一个个体的"有趣". 有人选择在朋友圈里记录生活的点滴,有人选择在朋友圈里展示观点的异同,可归根到底,人们无时无刻不在窥探着别人的生活,唯独怕别人过多地了解

  • 基于Python函数和变量名解析

    1.Python函数 函数是Python为了代码最大程度的重用和最小化代码冗余而提供的基本程序结构,用于将相关功能打包并参数化 Python中可以创建4种函数: 1).全局函数:定义在模块中,每个模块都是一个全局作用域,因此,全局作用域的范围仅限于单个程序文 2).局部函数:嵌套在其它函数中 3).lambda函数:表达式 4).方法:与特定数据类型关联的函数表,并且只能与数据类型关联一起使用 Python提供众多内置函数 Python创建.改变.查找变量名都是在名称空间中进行,在代码中变量名被

随机推荐