Plot.ly
数据分析离不开数据可视化。我们最常用的就是pandas,matplotlib,pyecharts当然还有Tableau,看到一篇文章介绍plotly制图后我也跃跃欲试,查看了相关资料开始尝试用它制图
Plotly 是一款用来做数据分析和可视化的在线平台,功能非常强大,可以在线绘制很多图形比如条形图、散点图、饼图、直方图等等。而且还是支持在线编辑,以及多种语言python、javascript、matlab、R等许多API。它在python中使用也很简单,直接用pip install plotly就可以了。推荐最好在jupyter notebook中使用,pycharm操作不是很方便。
import plotly.offline as pltoff import plotly.graph_objs as go def line_plots(name="line_plots.html"): dataset = { 'x': [], 'y1': [], 'y2': [], 'y3': [] } with open("./log.txt") as f: i = 0 for line in f: items = line.split() dataset['x'].append(i) dataset['y1'].append(items[0]) dataset['y2'].append(items[1]) dataset['y3'].append(items[2]) i += 1 data_g = [] # 构建 数据关系,折线图 x_y1 = go.Scatter( x=dataset['x'], y=dataset['y1'], mode='lines', name='lines') data_g.append(x_y1) x_y2 = go.Scatter( x=dataset['x'], y=dataset['y2'], mode='markers', name='markers') data_g.append(x_y2) x_y3 = go.Scatter( x=dataset['x'], y=dataset['y3'], mode='lines+markers', name='lines+markers') data_g.append(x_y3) # 设置图表布局 layout = go.Layout(title="Line plots", xaxis={'title': 'X'}, yaxis={'title': 'Y'}) fig = go.Figure(data=data_g, layout=layout) # 生成离线html pltoff.plot(fig, filename=name) if __name__ == '__main__':
实际展示效果非常棒, 而且各方面的操作非常舒服
使用起来也很简单