最近要統計網站某些頁面的UV,PV數量,這裡我先拋開ELK日誌分析平臺,談談這個echarts的數據可視化,個人感覺這個真心不錯,圖形化做得 非常nice.
按官方介紹:pyecharts 是一個用於生成 Echarts 圖表的類庫。Echarts 是百度開源的一個數據可視化 JS 庫。用 Echarts 生成的圖可視化效果非常棒,pyecharts 是為了與 Python 進行對接,方便在 Python 中直接使用數據生成圖。
下面先展示幾個官方教程中比較常用的例子。
柱狀圖/折線圖
基本的柱狀圖&折線圖
from pyecharts import Bar
bar = Bar("我的第一個圖表", "這裡是副標題")
bar.add("服裝", ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"], [5, 20, 36, 10, 75, 90],is_more_utils=True)
bar
基本柱狀圖和折線圖.gif
堆疊柱狀圖
from pyecharts import Bar
attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"]
v1 = [5, 20, 36, 10, 75, 90]
v2 = [10, 25, 8, 60, 20, 80]
bar = Bar("柱狀圖數據堆疊示例")
bar.add("商家A", attr, v1, is_stack=True)
bar.add("商家B", attr, v2, is_stack=True)
bar
堆疊柱狀圖.gif
還可以給柱狀圖加標記
帶標記的柱狀圖.gif
散點圖
from pyecharts import EffectScatter
v1 = [10, 20, 30, 40, 50, 60]
v2 = [25, 20, 15, 10, 60, 33]
es = EffectScatter("帶有漣漪特效動畫的動態散點圖示例")
es.add("effectScatter", v1, v2)
es
帶有漣漪特效的散點圖.gif
動態散點圖形.gif
漏斗圖
from pyecharts import Funnel
attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"]
value = [20, 40, 60, 80, 100, 120]
funnel = Funnel("漏斗圖示例")
funnel.add("商品", attr, value, is_label_show=True, label_pos="inside", label_text_color="#fff")
funnel
漏斗圖.gif
餅圖
from pyecharts import Pie
attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"]
v1 = [11, 12, 13, 10, 10, 10]
pie = Pie("餅圖示例")
pie.add("", attr, v1, is_label_show=True)
pie
餅圖.gif
from pyecharts import Pie
attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"]
v1 = [11, 12, 13, 10, 10, 10]
pie = Pie("餅圖-圓環圖示例", title_pos='center')
pie.add("", attr, v1, radius=[40, 75], label_text_color=None,
is_label_show=True, legend_orient='vertical',
legend_pos='left')
pie
圓環圖.gif
儀表盤
from pyecharts import Gauge
gauge = Gauge("儀表盤示例")
gauge.add("業務指標", "完成率", 66.66)
gauge.show_config()
gauge.render()
儀表盤.png
地理座標系
地理座標系組件用於地圖的繪製,支持在地理座標系上繪製散點圖,線集。
地理座標系1.gif
地理座標系2.gif
地理座標系3.gif
上面這些只是我覺得其中常用的一小部分。除了這些,還包含3D圖、關係圖、熱力圖、K線圖、水球圖、樹圖等等。效果都是非常炫酷,好看得不行!
我尤其喜歡這個水球圖。
水球圖.gif
但感覺用到的機會應該不多。。。
總之,非常推薦這個python數據可視化工具!!強大好用,效果炫酷,也支持numpy和pandas,非常便捷。
下面談談我目前基於pyecharts類庫所做的,主要定期(目前日誌是按天切割的)過濾一天中日誌的數值信息,然後動態傳值到pyecharts中生成render.html頁面。
最後放上我從nginx日誌中動態取值並傳到到pyecharts中的幾張截圖
希望大家多多關注,後期還會更新更過的數據可視化技術信息!!!
閱讀更多 IT黑旋風 的文章