您好,登錄后才能下訂單哦!
這篇文章主要介紹“pyecharts怎么實現時間軸”,在日常操作中,相信很多人在pyecharts怎么實現時間軸問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”pyecharts怎么實現時間軸”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
pyecharts中是如何利用時間軸來組合多個圖表的。
顧名思義,時間軸就是一條軸,上面有多個節點,狹義上可以把每個節點理解為年、月、日等時間節點,當然引申一下它還可以表示除時間以外的其他屬性。
舉個例子
有A-J一共10個商品品類,每個品類下面有5個商品,我們要展示這10*5個商品2020年每個月的銷量,數據如下圖
10個品類倒并不算多,但是每個品類下又有5個商品,兩個維度較差后就成了50個,如果我們把這50個全都放在一張圖里,肯定是密密麻麻難以區分。所以我們使用時間軸的方式,把品類和商品兩個維度分別表示。
看看效果
如上圖效果,可以簡單地理解為每個品類做一張圖,每張圖里用5條曲線表示每個商品,最后將這10張圖疊加到一起。最下面的組件即為時間軸,軸上10個點分別表示對應的品類,點擊即可切換。
如何實現
import pandas as pd import numpy as np from pyecharts import charts, options data = pd.read_excel('商品銷量.xlsx') timeline = charts.Timeline(init_opts=options.InitOpts(width='1200px', height='600px')) timeline.add_schema(axis_type='category', orient='horizontal', symbol='circle', symbol_size=10, play_interval=3000, is_auto_play=True, is_loop_play=True, is_timeline_show=True, control_position='left', pos_left='10%', pos_bottom='0%', width='800px', height='30px') for i in list(set(data['品類'])): line = charts.Line(init_opts=options.InitOpts(width='1200px', height='600px')) line.add_xaxis([str(x) for x in range(1, 13)]) line.set_global_opts( title_opts=options.TitleOpts('各商品銷量趨勢圖', pos_left='50%'), legend_opts=options.LegendOpts(is_show=True, pos_top='50%', pos_right='0%', orient='vertical')) for j in list(set(data.loc[data['品類'] == i, '商品'])): line.add_yaxis(series_name=j, y_axis=list(data.loc[np.array(data['品類'] == i) & np.array(data['商品'] == j), '銷量'])) timeline.add(chart=line, time_point=i) timeline.render('timeline.html')
這都是啥玩意兒
第一步,讀取excel文件不必多說。
然后就是創建時間軸對象,和普通圖表類型一樣進行初始化配置,我們這里只設置高和寬。接下來是設置時間軸的相關屬性:
1.axis_type表示時間軸類型,值可以是value(連續數值型)、category(離散型)、time(時間),如果是time,程序會自動計算時間間隔選擇合適的顯示格式,此處我們適用的是category
2.orient是時間軸的放置方向,取值為vertical(垂直)或horizontal(水平)
3.symbol用來定義時間軸上節點的圖標,如:'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'
4.symbol_size控制節點圖標的大小
5.時間軸會附帶一個播放按鈕,點擊可以播放和暫停,使用play_interval來控制節點的切換時間間隔,單位是毫秒
6.將is_auto_play設置為True,頁面打開后將會自動播放
7.is_loop_play則表示循環播放
8.is_timeline_show就是頁面是否顯示時間軸組建
9.control_position是播放按鈕的位置,left、right
10.pos_left、pos_right、pos_top、pos_bottom則是控制時間軸位置的參數,分別表示時間軸離容器左、右、上、下側的距離,可以是百分比也可以是絕對值
11.height和width就是時間軸的高度和寬度
時間軸屬性配置完成后,使用循環的方式,把每次創建的圖表對象line添加到timeline上即可。這里只是以折線圖為例,實際上時間軸可以對多種圖表類型進行組合,比如多個餅圖、多個地圖,或者是不同圖表類型之間也可以在同一個時間軸中實現自由切換。
到此,關于“pyecharts怎么實現時間軸”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。