自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

圖樣圖森破--Pyecharts是個啥

大數(shù)據(jù) 數(shù)據(jù)可視化
工欲善其事,必先利其器。作為數(shù)據(jù)分析師,最基礎的工作肯定就是數(shù)據(jù)查詢和可視化了。今天,我們就來說一說分析師吃飯的家伙之一——可視化工具。

 工欲善其事,必先利其器。作為數(shù)據(jù)分析師,最基礎的工作肯定就是數(shù)據(jù)查詢和可視化了。今天,我們就來說一說分析師吃飯的家伙之一——可視化工具。

目前市面上的可視化工具和BI系統(tǒng)花樣繁多,開源的付費的不一而足。諸如Tableau、FineBI、PowerBI之類,甚至于基礎的excel或wps都能夠滿足基本的圖表展示和數(shù)據(jù)庫連接的需求,但是有些時候圖表類型又過于呆板,缺乏交互和定制,而且一些BI軟件部分功能是要收費的,對于個人用戶或是創(chuàng)業(yè)初期、預算有限的團隊來說不甚友好。

?[[380958]]?

今天就為大家介紹一下由百度出品的開源交互式圖表——ECharts,劃重點,開源哦,可以免費商用!我們看一下ECharts團隊的官方介紹:ECharts 提供了常規(guī)的折線圖、柱狀圖、散點圖、餅圖、K線圖,用于統(tǒng)計的盒形圖,用于地理數(shù)據(jù)可視化的地圖、熱力圖、線圖,用于關系數(shù)據(jù)可視化的關系圖、treemap、旭日圖,多維數(shù)據(jù)可視化的平行坐標,還有用于 BI 的漏斗圖,儀表盤,并且支持圖與圖之間的混搭。除了已經(jīng)內(nèi)置的包含了豐富功能的圖表,ECharts 還提供了自定義系列,只需要傳入一個renderItem函數(shù),就可以從數(shù)據(jù)映射到任何你想要的圖形,更棒的是這些都還能和已有的交互組件結(jié)合使用而不需要操心其它事情。你可以在下載界面下載包含所有圖表的構(gòu)建文件,如果只是需要其中一兩個圖表,又嫌包含所有圖表的構(gòu)建文件太大,也可以在在線構(gòu)建中選擇需要的圖表類型后自定義構(gòu)建。

圖片

那么,echarts能做什么呢?

首先,echarts的圖表類型之豐富,絕不亞于市面上常見的付費軟件,以至于不少BI系統(tǒng)都是基于echarts搭建。于分析師而言,日常使用最多的折線圖、條形圖、散點圖、餅圖等,自然不在話下,同時,還有豐富的擴展項,如南丁格爾玫瑰圖:

圖片

此外,還可支持多種地圖、K線圖、箱型圖、樹圖、旭日圖、關系圖等,配合web頁面布局和配色,可以制作交互式+動態(tài)+炫酷大屏

看上去這么炫,是不是很難上手?

雖然如上所述,ECharts擁有開源、高度定制的優(yōu)點,但是美中不足的是,ECharts的使用需要有一定的前端開發(fā)基礎,只是這一點就讓很多人望而卻步了,對于分析師而言,我們的工作并不會涉及到前端開發(fā),為了使用某個圖表學習前端框架和JS語言的成本可能太高了。但不幸中的萬幸,有大神為我們開發(fā)了一套基于ECharts的開源框架——pyecharts,該框架使用python語言編寫,函數(shù)式傳參、簡單快捷。在大數(shù)據(jù)和機器學習概念日益火爆的今天,python已經(jīng)成為了很多分析師的必備技能,在這一buff加成之下,要學會使用ECharts簡直是易如反掌。

怎么玩轉(zhuǎn)Pyecharts?

pyecharts目前有兩個大的版本,0.5和1.x,兩者所支持的圖表類型大同小異,所有方法也都支持鏈式調(diào)用(形如fun1().fun2().fun3()的寫法即為鏈式調(diào)用),但結(jié)構(gòu)和用法都相去甚遠,對python版本要求也略有不同。初入門者如果使用的python版本在3.6以上,最好還是使用1.x的pyecharts,因為0.5版本目前已不再更新,而1.x版本相比0.5也更加簡單易讀,圖表類和配置項結(jié)構(gòu)分明、調(diào)用靈活。

 ??

動手試試吧

首先我們使用pip命令安裝pyecharts,并指定版本:pip install pyecharts==1.9.3安裝完成之后我們就可以導入了,pyecharts中圖表和配置項分別位于charts和options兩個模塊下,也就是說我們可以在charts中選擇所需要的各種圖表類型(折線圖、散點圖、柱狀圖、餅圖等等),而options則是對圖表的配置,包括顏色、大小、線形、標簽等等。下面我們來看一下pyecharts究竟是如何生成圖表文件的。以簡單的折線圖為例,示例數(shù)據(jù)如下:

??

廢話不多說,上代碼:

import pandas as pd 
from pyecharts import charts
from pyecharts import options

# pandas讀入excel數(shù)據(jù)
data = pd.read_excel('test.xlsx')
# 普通調(diào)用
# 創(chuàng)建折線圖
line = charts.Line(
init_opts=options.InitOpts(
width='1200px',
height='600px',
chart_id='my_line_test'))
# 全局配置項
line.set_global_opts(
title_opts=options.TitleOpts( # 圖表標題配置
title='hello,pyecharts!',
pos_right='center'),
legend_opts=options.LegendOpts( # 圖例配置項
is_show=True,
pos_right='50%',
pos_top='95%'),
toolbox_opts=options.ToolboxOpts( #工具箱配置項
is_show=True,
pos_left='right',
pos_top='center',
orient='vertical'))
# 添加x軸數(shù)據(jù)項
line.add_xaxis(xaxis_data=list(data['date']))
# 添加y軸數(shù)據(jù)項
line.add_yaxis(series_name='android', y_axis=data['Android-uv'], color='red')
line.add_yaxis(series_name='ios', y_axis=data['iOS-uv'], color='blue')
# 設置數(shù)據(jù)系列格式
line.set_series_opts(
label_opts=options.LabelOpts(
is_show=True,
position='top',
color='green',
font_size=8))
# render生成html文件
line.render('test.html')


# 鏈式調(diào)用
(charts.Line(
init_opts=options.InitOpts(
width='1200px',
height='600px',
chart_id='my_line_test')).set_global_opts(
title_opts=options.TitleOpts(
title='hello,pyecharts!',
pos_right='center'),
legend_opts=options.LegendOpts(
is_show=True,
pos_right='50%',
pos_top='95%'),
toolbox_opts=options.ToolboxOpts(
is_show=True,
pos_left='right',
pos_top='center',
orient='vertical')).add_xaxis(
xaxis_data=list(
data['date'])).add_yaxis(
series_name='android',
y_axis=data['Android-uv'],
color='red').add_yaxis(
series_name='ios',
y_axis=data['iOS-uv'],
color='blue').set_series_opts(
label_opts=options.LabelOpts(
is_show=True,
position='top',
color='green',
font_size=8)).render('test2.html'))

 ??

根據(jù)上述代碼,我們可以把使用pyecharts生成交互圖表的步驟歸納如下:

1.數(shù)據(jù)預處理

2.創(chuàng)建圖表對象

3.添加數(shù)據(jù)項和配置項

4.render生成html文件

我們可以看到在圖形的右側(cè)有一豎排的工具欄,這是代碼中配置的toolbox,工具箱里可以對圖形進行一系列操作,還可以將圖表保存為靜態(tài)圖片,在增強交互的同時也大大提高了圖形縮放、圖表間互相轉(zhuǎn)換的便捷性。

以上只是對pyecharts的簡單介紹和示范,后續(xù)我們會對pyecharts的各主要圖表和功能做詳細介紹。

??

 

責任編輯:姜華 來源: 數(shù)師兄
相關推薦

2021-03-05 07:03:38

Pyecharts可視化工具復合圖

2021-03-17 08:54:43

Pyecharts可視化工具地圖

2021-03-08 08:11:09

Pyecharts可視化工具云圖

2021-02-24 11:23:22

Pyecharts可視化工具柱狀圖

2021-02-20 09:36:11

數(shù)據(jù)大數(shù)據(jù)數(shù)據(jù)可視化

2020-06-02 07:44:04

AQS JavaNode

2021-05-19 10:44:42

數(shù)據(jù)庫架構(gòu)技術

2017-05-03 16:16:21

DevOpsLinuxKitMoby

2021-08-27 09:00:00

CDC數(shù)據(jù)庫技術

2020-12-14 10:25:08

DNS通信IP

2024-02-07 12:35:00

React并發(fā)模式concurrent

2022-07-13 13:03:29

流計算亂序

2021-05-11 07:30:58

JNIJavaAPI

2022-05-04 08:38:32

Netty網(wǎng)絡框架

2015-10-23 09:34:16

2021-01-28 17:41:32

Github網(wǎng)站Pull Reques

2022-04-10 19:26:07

TypeScript類型語法

2017-05-14 16:34:07

語言PLSQL

2024-07-12 15:08:23

Python@wraps函數(shù)

2015-09-21 14:22:43

點贊
收藏

51CTO技術棧公眾號