Plotly的动态可视化绘图
介绍
plotly plotly是一个可交互,基于浏览器的绘图库,主打功能是绘制在线可交互的图表,所绘制出来的图表真的赏心悦目。
它所支持的语言不只是Python,还支持诸如r,matlab,javescript等语言。plotly绘制的图能直接在jupyter中查看,也能保存为离线网页,或者保存在plot.ly云端服务器内,以便在线查看。
官网:
https://plotly.com/
开发文档:
https://plotly.com/python/
plotly安装:
pip install plotly
plotly 两种方式绘制图表:
Plotly是集成了在线通过菜单操作绘图与离线通过代码绘图多种绘图方式的绘图系统。如果使用在线方式,在使用plotly的时候,需要在官网注册一个个人账号,设置个人密码。
在线:将你的可视化图像保存到网站上,便于共享和保存。
离线:直接在本地生成可视化图像,便于使用。
plotly绘图支持绘图种类
- 基本图表:20种
- 统计和海运方式图:12种
- 科学图表:21种
- 财务图表:2种
- 地图:8种
- 3D图表:19种
- 报告生成:4种
- 连接数据库:7种
- 拟合工具:3种
- 流动图表:4种
- JavaScript添加自定义控件:13种
使用plotly
在线绘图:web端可视化
首先注册一个plotly账号,在用户头像–setting–API Keys下生成API key
import plotly.plotly as py import plotly.graph_objs as go plotly.tools.set_credentials_file(username='your_name', api_key='your_keys') trace0 = go.Scatter( x=[1, 2, 3, 4], y=[10, 15, 13, 17] ) trace1 = go.Scatter( x=[1, 2, 3, 4], y=[16, 5, 11, 9] ) data = [trace0, trace1] py.plot(data, filename = 'basic-line', auto_open=True)
离线绘图
网页输出式绘图:plotly提供了每个绘图函数的离线版本,生成html文件。
import plotly import plotly.graph_objs as go plotly.offline.plot({ "data": [go.Scatter(x=[1, 2, 3, 4], y=[4, 3, 2, 1])], "layout": go.Layout(title="hello world") }, auto_open=True)
输出静态图片
plotly.py 支持静态图片输出。plotly.io.to_image能将plotly 图表转为静态图
import plotly.graph_objs as go import plotly.io as pio trace1 = [go.Scatter(x=[1,2,3], y=[4,5,6], marker={'color': 'red', 'symbol': 104, 'size': 10}, mode="markers+lines", text=["one","two","three"], name='1st Trace')] layout=go.Layout(title="First Plot", xaxis={'title':'x1'}, yaxis={'title':'x2'}) figure=go.Figure(data=trace1,layout=layout) static_image_bytes = pio.to_image(figure, format='png') from IPython.display import Image Image(static_image_bytes)
如果要保存静态图片,plotly.io.write_image能将图片转为包括png,jpg,pdf,svg,eps在内的多种格式。
更多参考: