pyecharts画k线图、雷达图、漏斗图教程

以下是使用Pyecharts绘制k线图、雷达图和漏斗图的简单教程:

  1. k线图(Candlestick)
from pyecharts.charts import Candlestick
from pyecharts import options as opts

# 准备数据
data = [
    [2320.26, 2320.26, 2287.3, 2362.94], [2300, 2291.3, 2288.26, 2308.38],
    [2295.35, 2346.5, 2295.35, 2346.92], [2347.22, 2358.98, 2337.35, 2363.8],
    [2360.75, 2382.48, 2347.89, 2383.76], [2383.43, 2385.42, 2371.23, 2391.82],
    [2377.41, 2419.02, 2369.57, 2421.15], [2425.92, 2428.15, 2417.58, 2440.38],
    [2411, 2433.13, 2403.3, 2437.42], [2432.68, 2434.48, 2427.7, 2441.73],
    [2430.69, 2418.53, 2394.22, 2433.89], [2416.62, 2432.4, 2414.4, 2443.03],
    [2441.91, 2421.56, 2415.43, 2444.8], [2420.26, 2382.91, 2373.53, 2427.07],
    [2383.49, 2397.18, 2370.61, 2397.94], [2378.82, 2325.95, 2309.17, 2378.82],
    [2322.94, 2314.16, 2308.76, 2330.88], [2320.62, 2325.82, 2315.01, 2338.78],
    [2313.74, 2293.34, 2289.89, 2340.71], [2297.77, 2313.22, 2292.03, 2324.63],
    [2322.32, 2365.59, 2308.92, 2366.16], [2364.54, 2359.51, 2330.86, 2369.65],
    [2332.08, 2273.4, 2259.25, 2333.54], [2274.81, 2326.31, 2270.1, 2328.14],
    [2333.61, 2347.18, 2321.6, 2351.44], [2340.44, 2324.29, 2304.27, 2352.02],
    [2326.42, 2318.61, 2314.59, 2333.67], [2314.68, 2310.59, 2296.58, 2320.96],
    [2309.16, 2286.6, 2264.83, 2333.29], [2282.17, 2263.97, 2253.25, 2286.33],
    [2255.77, 2270.28, 2253.31, 2276.22]
]

x_data = ['2017/7/{}'.format(i + 1) for i in range(31)]

# 创建Candlestick对象
candlestick = Candlestick()
candlestick.add_xaxis(xaxis_data=x_data) # 设置x轴数据 

# 将数据传入add_ohlcv方法中
candlestick.add_yaxis(series_name="", y_axis=data)

# 设置图表样式
candlestick.set_global_opts(
    xaxis_opts=opts.AxisOpts(is_scale=True), # x轴数据自适应
    yaxis_opts=opts.AxisOpts(is_scale=True), # y轴数据自适应
    title_opts=opts.TitleOpts(title="K线图"), # 图表名称
    datazoom_opts=[opts.DataZoomOpts()], # 缩放工具
    tooltip_opts=opts.TooltipOpts(
        trigger="axis",  # tooltip 触发事件,改为 axis 表示触发于数据轴
        axis_pointer_type="cross", # tooltip 指示器类型,增加 pointer 表示有指示器
        axis_pointer_label=opts.LabelOpts(background_color="#505765"), # 指示器标签
    ),
)

# 将图表保存为html文件
candlestick.render("candlestick.html")
  1. 雷达图(Radar)
from pyecharts.charts import Radar, Line
from pyecharts import options as opts

# 准备数据
data = [
    ["周一", 3100], ["周二", 4230], ["周三", 5200], ["周四", 6600], ["周五", 8300], ["周六", 10000], ["周日", 12500]
]

# 创建Radar对象
radar = Radar()

radar.add_schema(
    schema=[
        opts.RadarIndicatorItem(name="销售额", max_=13000), # 添加雷达图指标项
    ]
)

# 添加雷达图系列数据
radar.add("系列名称", data, areastyle_opts=opts.AreaStyleOpts(opacity=0.5),)

# 添加折线图,用于辅助显示数据
line = Line()
line.add_xaxis([i[0] for i in data])
line.add_yaxis("销售额", [i[1] for i in data], is_symbol_show=True, is_smooth=True, linestyle_opts=opts.LineStyleOpts(color="#ff7f50"))

radar = radar.overlap(line)

# 设置图表样式
radar.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
radar.set_global_opts(title_opts=opts.TitleOpts(title="雷达图"))

# 将图表保存为html文件
radar.render("radar.html")
  1. 漏斗图(Funnel)
from pyecharts.charts import Funnel
from pyecharts import options as opts

# 准备数据
data = [("访问", 30), ("点击", 24), ("询价", 18), ("订单", 15), ("支付", 8)]

# 创建Funnel对象
funnel = Funnel()
funnel.add("漏斗图", data)

# 设置图表样式
funnel.set_global_opts(
    title_opts=opts.TitleOpts(title="漏斗图"),
    tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b} : {c}%"), # 设置tooltip
    legend_opts=opts.LegendOpts(is_show=False)
)

# 将图表保存为html文件
funnel.render("funnel.html")

上述代码中,分别使用Candlestick、Radar和Funnel创建k线图、雷达图和漏斗图。每个图表的创建方式都类似,根据需要自定义数据和样式。Pyecharts的文档中提供了详细的教程和示例,可以帮助开发人员更好地使用这些图表。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ECharts 是一个由百度开发的开源 JavaScript 数据可视化库,它提供了丰富的图表类型和交互功能。要绘制 K 线图(K-Line Chart),你可以使用 ECharts 中的「Candlestick Chart」(蜡烛图)类型。 下面是一个使用 ECharts 绘制 K 线图的示例代码: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>ECharts K 线图示例</title> <!-- 引入 ECharts --> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script> </head> <body> <!-- 创建一个具有指定宽度和高度的 DOM 容器 --> <div id="chart" style="width: 800px; height: 600px;"></div> <script> // 初始化 ECharts 实例 var myChart = echarts.init(document.getElementById('chart')); // 构造假数据 var data = [ // [时间, 开盘价, 收盘价, 最低价, 最高价] ['2021-01-01', 100, 120, 80, 130], ['2021-01-02', 110, 115, 90, 120], // ... ]; // 格式化数据 var formattedData = data.map(function (item) { return [item[0], item[1], item[2], item[3], item[4]]; }); // 配置图表选项 var option = { title: { text: 'K 线图示例' }, xAxis: { type: 'category', data: formattedData.map(function (item) { return item[0]; }) }, yAxis: {}, series: [{ type: 'candlestick', data: formattedData }] }; // 使用刚指定的配置项和数据显示图表 myChart.setOption(option); </script> </body> </html> ``` 你可以将上述代码保存为一个 HTML 文件并在浏览器中打开,即可看到绘制的 K 线图。要显示实际的股票数据,你需要替换示例中的假数据为真实的股票数据,并通过适当的数据源或 API 来获取它们。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值