返回
玩转Pyecharts,打造炫酷K线图,轻松展示数据价值
后端
2023-11-13 22:32:03
K线图:直观展示数据变化趋势的利器
K线图简介
K线图是一种通过蜡烛状图形表现特定时间段价格变化的图表。它包含开盘价、最高价、最低价和收盘价等关键信息,广泛应用于金融、股票和经济领域。
Pyecharts中的K线图
作为一款功能强大的数据可视化工具,Pyecharts在K线图绘制方面拥有独特优势。其丰富的参数设置可以满足不同场景下的需求,包括:
- 符号形状: 可选择蜡烛图、条形图和折线图。
- 宽度: 设置K线图的宽度。
- 样式: 自定义颜色、线条宽度和边框颜色。
- 标记点: 添加标记点,指定位置、颜色和大小。
- 标记线: 添加标记线,指定起始点、终点、颜色和宽度。
- 数据缩放: 实现数据缩放功能,支持缩放范围、方式和手柄位置设置。
K线图实战
1. 普通K线图
from pyecharts import Kline
data = [
[2320.26, 2320.26, 2287.3, 2291.35],
[2295.35, 2346.56, 2295.35, 2345.92],
[2345.92, 2321.62, 2321.62, 2283.94],
[2283.94, 2314.17, 2306.7, 2296.24],
[2296.24, 2295.92, 2222.76, 2273.92],
[2273.92, 2264.81, 2196.36, 2197.06],
[2197.06, 2000, 2032.78, 2015.94],
[2015.94, 1989.14, 1906.4, 1908.14],
[1908.14, 1934.89, 1938.17, 1975.51],
[1975.51, 1928.18, 1926.43, 1927.38]
]
kline = Kline("K线图示例")
kline.add("日K", data)
kline.render()
2. 添加辅助线
from pyecharts import Kline
data = [
[2320.26, 2320.26, 2287.3, 2291.35],
[2295.35, 2346.56, 2295.35, 2345.92],
[2345.92, 2321.62, 2321.62, 2283.94],
[2283.94, 2314.17, 2306.7, 2296.24],
[2296.24, 2295.92, 2222.76, 2273.92],
[2273.92, 2264.81, 2196.36, 2197.06],
[2197.06, 2000, 2032.78, 2015.94],
[2015.94, 1989.14, 1906.4, 1908.14],
[1908.14, 1934.89, 1938.17, 1975.51],
[1975.51, 1928.18, 1926.43, 1927.38]
]
kline = Kline("K线图示例")
kline.add("日K", data)
kline.add_mark_point(symbol="star", itemstyle_color="red", data=[
["2016-06-02", 2300]
])
kline.render()
3. K线图鼠标缩放
from pyecharts import Kline
data = [
[2320.26, 2320.26, 2287.3, 2291.35],
[2295.35, 2346.56, 2295.35, 2345.92],
[2345.92, 2321.62, 2321.62, 2283.94],
[2283.94, 2314.17, 2306.7, 2296.24],
[2296.24, 2295.92, 2222.76, 2273.92],
[2273.92, 2264.81, 2196.36, 2197.06],
[2197.06, 2000, 2032.78, 2015.94],
[2015.94, 1989.14, 1906.4, 1908.14],
[1908.14, 1934.89, 1938.17, 1975.51],
[1975.51, 1928.18, 1926.43, 1927.38]
]
kline = Kline("K线图示例")
kline.add("日K", data)
kline.set_global_opts(datazoom_opts=dict(is_show=True, type_='inside'))
kline.render()
4. 添加数据缩放滑块
from pyecharts import Kline
data = [
[2320.26, 2320.26, 2287.3, 2291.35],
[2295.35, 2346.56, 2295.35, 2345.92],
[2345.92, 2321.62, 2321.62, 2283.94],
[2283.94, 2314.17, 2306.7, 2296.24],
[2296.24, 2295.92, 2222.76, 2273.92],
[2273.92, 2264.81, 2196.36, 2197.06],
[2197.06, 2000, 2032.78, 2015.94],
[2015.94, 1989.14, 1906.4, 1908.14],
[1908.14, 1934.89, 1938.17, 1975.51],
[1975.51, 1928.18, 1926.43, 1927.38]
]
kline = Kline("K线图示例")
kline.add("日K", data)
kline.set_global_opts(datazoom_opts=dict(is_show=True, type_='slider'))
kline.render