,Plotly是一个非常著名且强大的开源数据可视化框架,它通过构建基于浏览器显示的web形式的可交互图表来展示信息,可创建多达数十种精美的图表和地图。
,Plotly中绘制图像有在线和离线两种方式,因为在线绘图需要注册账号获取API key,较为麻烦,所以本文仅介绍离线绘图的方式。
,离线绘图又有plotly.offline.plot()和plotly.offline.iplot()两种方法,前者是以离线的方式在当前工作目录下生成html格式的图像文件,并自动打开;
,后者是在jupyter notebook中专用的方法,即将生成的图形嵌入到ipynb文件中,本文即采用后面一种方式(注意,在jupyter notebook中使用plotly.offline.iplot()时,需要在之前运行plotly.offline.init_notebook_mode()以完成绘图代码的初始化,否则会报错)。
,plotly.offline.iplot()的主要参数如下:,下面是一个简单的示例:,
,plotly中的graph_objs是plotly下的子模块,用于导入plotly中所有图形对象,在导入相应的图形对象之后,便可以根据需要呈现的数据和自定义的图形规格参数来定义一个graph对象,再输入到plotly.offline.iplot()中进行最终的呈现.
,查询相关帮助手册得到如下结果:,可以看出graph_objs中包含的图形对象非常之丰富,本文也会挑选其中常用的几种进行介绍。
,在根据绘图需求从graph_objs中导入相应的obj之后,接下来需要做的事情是基于待展示的数据,为指定的obj配置相关参数,这在plotly中称为构造traces(create traces),下面举两个简单的例子来帮助理解这个部分:
,首先,我们来绘制一个较为基本的散点图:,
,从上面的简单实例可以看出trace创建的大致方式,而一张图中可以叠加多个trace,如下面的例子:,
,对于不同的graph_obj,trace的配置格式也各有不同之处。
,plotly中图像的图层元素与底层的背景、坐标轴等是独立开来的,在我们通过前面介绍的内容,定义好绘制图像需要的对象之后,可以直接绘制,但如果想要在背景图层上有更多自定义化的内容,就需要定义Layout()对象,其主要参数如下,我们根据设置对象的不同分为几个部分并分开举例讲解:
,2.4.1 文字,文字是一幅图中十分重要的组成部分,plotly其强大的绘图机制为一幅图中的文字进行了细致的划分,可以非常有针对性地对某一个组件部分的字体进行个性化的设置:
,全局文字:
,下面是一个简单的例子:,
,标题文字:
,下面是一个简单的例子:
,
,2.4.2 坐标轴,下面是几个简单的示例。
,1. 对横纵坐标轴标题字体进行修改。,
,2. 对横纵方向的坐标轴线条及网格进行设置,
,2.4.3 图例,下面是一个简单的例子。
,将图例的位置挪动到图像中心,即百分比上(0.5,0.5)的位置:,
,2.4.4 其它杂项,以上就是plotly的绘图基础部分,如有笔误,望指出。
© 版权声明
文章版权归作者所有,未经允许请勿转载。