文章目錄
- 1. 匯入模塊
- 2. Pandas資料處理
- 2.1 讀取資料
- 2.2 截取序列時間資料
- 3. Pyecharts動態圖繪制
- 3.1 設定橫坐標中坐標資料樣式
- 3.2 設定全域樣式
- 推薦閱讀
大家好,我是 👉 【Python當打之年】
本期主要利用pyecharts給大家展示位元幣近幾年股價變遷,主要用到 timeline 函式,希望對你有所幫助,
先看看效果:

1. 匯入模塊
import datetime
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Line,Timeline
from pyecharts.commons.utils import JsCode
升級 pyecharts 包:
可視化部分需要用到 pyecharts==1.9.0,已安裝其他低版本的需要升級,如果未安裝過pyecharts,直接pip安裝就是最新版本,
2. Pandas資料處理
2.1 讀取資料
df = pd.read_csv('btc.csv')
df
結果:

2.2 截取序列時間資料
資料時間可以根據需要自行調整(以2019-09-01為例):
df['date'] = pd.to_datetime(df['date'], format='%Y-%m-%d')
df = df[(df['date'] >=pd.to_datetime('20190901'))]
結果:

3. Pyecharts動態圖繪制
3.1 設定橫坐標中坐標資料樣式
Line.add_xaxis(list(df['date'])[0:i])
Line.add_yaxis(
series_name="",
y_axis=list(df['closep'])[0:i], is_smooth=True,is_symbol_show=False,
linestyle_opts={
'normal': {
'width': 3,
'shadowColor': 'rgba(0, 0, 0, 0.5)',
'shadowBlur': 5,
'shadowOffsetY': 10,
'shadowOffsetX': 10,
'curve': 0.5,
'color': JsCode(color_js0)
}
},
itemstyle_opts=opts.ItemStyleOpts(color=JsCode(color_js0)),
markpoint_opts=opts.MarkPointOpts(
data=[
opts.MarkPointItem(
name="high_price",
value=f'{coordy_high}$',coord=[coordx,coordy_high],symbol=symbol,
symbol_size=30,
itemstyle_opts=opts.ItemStyleOpts(color='#FF8C00',border_color="#FFD700")
)
],
label_opts=opts.LabelOpts(font_size=18,color="#EB1934",font_weight="bold",position="right")
),
)
這里主要注意線型(linestyle)和標記(markpoint)的設定,
3.2 設定全域樣式
Line.set_global_opts(
title_opts=opts.TitleOpts(
title=f"btc每日收盤價({title_date})",
pos_top="10%",
pos_left="center",
title_textstyle_opts=opts.TextStyleOpts(color="#0000FF", font_family='STKaiti', font_size=20),
),
xaxis_opts=opts.AxisOpts(
type_="time",
max_=x_max,
boundary_gap=False,
axislabel_opts=opts.LabelOpts(color="#EB1934"),
axisline_opts=opts.AxisLineOpts(
is_show=True,
linestyle_opts=opts.LineStyleOpts(width=2, color="#EB1934")
),
axistick_opts=opts.AxisTickOpts(
is_show=True,
linestyle_opts=opts.LineStyleOpts(color="#EB1934"),
),
),
yaxis_opts=opts.AxisOpts(
type_="value",
max_=y_max,
position="left",
axislabel_opts=opts.LabelOpts(color="#EB1934"),
axisline_opts=opts.AxisLineOpts(
is_show=True,
linestyle_opts=opts.LineStyleOpts(width=2, color="#EB1934")
),
axistick_opts=opts.AxisTickOpts(
is_show=True,
linestyle_opts=opts.LineStyleOpts(color="#EB1934"),
),
splitline_opts=opts.SplitLineOpts(
is_show=False, linestyle_opts=opts.LineStyleOpts(color="#EB1934")
),
),
)
效果:

3.3 添加背景圖片
graphic_opts=[
opts.GraphicImage(
graphic_item=opts.GraphicItem(
id_="logo", z=-10, bounding="raw", origin=[50, 100]
),
graphic_imagestyle_opts=opts.GraphicImageStyleOpts(
image="coin.jpg",
width=900,
height=600,
opacity=0.2,
),
)
],
效果:
以上就是本期為大家整理的全部內容了,趕快練習起來吧,原創不易,喜歡的朋友可以點贊、收藏也可以分享(注明出處)讓更多人知道,
推薦閱讀
爬取《白蛇2:青蛇劫起》20000+影評資料分析可視化
可視化 | Python分析中秋月餅,這幾種口味才是yyds!!!
123個Pandas常用基礎指令,真香!
爬蟲+可視化 | 動態展示2020東京奧運會獎牌世界分布
Pandas+Pyecharts | 北京某平臺二手房資料分析+可視化
Pandas+Pyecharts | 2021中國大學綜合排名分析+可視化
可視化 | Python繪制高顏值臺風地理軌跡圖
可視化 | 用Python分析近5000個旅游景點,告訴你假期應該去哪玩
可視化 | Python精美地圖動態展示近20年全國各省市GDP
可視化 | Python陪你過520:在你身邊,你在身邊
爬蟲 | Python送你王者榮耀官網全套皮膚
爬蟲 | 用python構建自己的IP代理池,再也不擔心IP不夠用啦!
技巧 | 20個Pycharm最實用最高效的快捷鍵(動態展示)
技巧 | 5000字超全決議Python三種格式化輸出方式【% / format / f-string】
技巧 | python定時發送郵件(自動添加附件)
爬蟲 | Python送你王者榮耀官網全套皮膚
爬蟲 | 用python構建自己的IP代理池,再也不擔心IP不夠用啦!
文章首發微信公眾號 “Python當打之年” ,每天都有python編程技巧推送,希望大家可以喜歡

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/303113.html
標籤:區塊鏈
上一篇:Solidity的上溢與下溢
