【Pyecharts】pyecharts中如何自定义提示框内容

pyecharts中如何自定义提示框内容

一更

简单聊几句
	pyeharts
    我真的很不看好它的官方文档
    条理清晰,内容简单
    我就想问,你就告诉我个params
    我怎么知道怎么传参
    真是个心累boy...
    一天之内,文档翻了几十遍
    CSDN,简书,Github,码云
    样样查了一遍
    不知道是我不仔细
    还是什么原因
    真的是没找到呀
    呜呜呜...
  • 先来瞅瞅自定义提示框的效果图
    在这里插入图片描述

  • 是不是很丑,我也这么觉得

  • 说说问题吧,我x轴,y轴本来只传了坐标作为参数

  • 可是,我想让提示框里显示我输入的坐标对应的是谁

  • 这下就没办法了,知道要往params里面传值,可是他也没说怎么传

  • 那我最后怎么解决的呢,我发现,不管我要传什么值,只要把它往y轴里放,最后我都能在params中拿到

  • 但是注意呀,x轴只能放一个值

  • 还有我说的这种情况是在x轴,y轴类型都是value的情况下

  • 不过又遇到了新问题,y轴放多个数值的话,我的涟漪效果不能用了

  • 不知该如何解决

  • 有人知道的话,可以私信我,或者评论区留言

  • 最后一波,上代码

from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.commons.utils import JsCode

class darwToHtml:
    def scatter_charts(self,xlist, ylist):
        scatter = Scatter()
        scatter.add_xaxis(xaxis_data=xlist )
        scatter.add_yaxis(series_name="", y_axis=ylist, label_opts=opts.LabelOpts(is_show=False))
        scatter.set_global_opts(
            xaxis_opts=opts.AxisOpts(
                type_="value",
                name='x轴'
            ),
            yaxis_opts=opts.AxisOpts(
                type_="value",
                name='y轴'
            ),
            title_opts=opts.TitleOpts(title='计算机组成签到图', pos_top='30px', pos_left='center'),
            tooltip_opts=opts.TooltipOpts(is_show=True,trigger_on='mousemove|click',axis_pointer_type='cross',formatter=JsCode(
                """function(params){
                    return '学号:'+params.data[2]+'<br/>'+'姓名:'+params.data[3]
                }
                """
            ))
        )
        return scatter

if __name__:
    dh = darwToHtml()
    xlist = [1.2, 2.3, 2.4, 3.5, 4.6, 5.1]
    ylist = [[2.2,20185476,"xx1"], [2.5,20185475,"xx2"], [1.7,20185474,"xx3"], [4.6,20185473,"xx4"], [5.8,20185472,"xx5"], [6.9,20185470,"xx6"]]
    scatter = dh.scatter_charts(xlist,ylist)
    scatter.render('scatter.html')

二更
此次更新只是对代码的改善,尚未解决的问题仍然是涟漪效果不能用。不过确定了一件事,不管怎么搞,要显示的内容都是放在y里

from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.commons.utils import JsCode
import pandas as pd

class darwToHtml:
    def scatter_charts(self, data):
        df = pd.DataFrame(data)
        scatter = Scatter()
        scatter.add_xaxis(xaxis_data=df.经度.values.tolist() )
        scatter.add_yaxis(series_name="", y_axis=df[["纬度","学号","姓名"]].values.tolist(), label_opts=opts.LabelOpts(is_show=False))
        scatter.set_global_opts(
            xaxis_opts=opts.AxisOpts(
                type_="value",
                name='x轴'
            ),
            yaxis_opts=opts.AxisOpts(
                type_="value",
                name='y轴'
            ),
            title_opts=opts.TitleOpts(title='计算机组成签到图', pos_top='30px', pos_left='center'),
            tooltip_opts=opts.TooltipOpts(is_show=True,trigger_on='mousemove|click',axis_pointer_type='cross',formatter=JsCode(
                """function(params){
                    return '学号:'+params.data[2]+'<br/>'+'姓名:'+params.data[3]
                }
                """
            ))
        )
        return scatter

if __name__:
    dh = darwToHtml()
    xlist = [1.2, 2.3, 2.4, 3.5, 4.6, 5.1]
    ylist = [2.2, 2.5, 1.7, 4.6, 5.8, 6.9]
    stunolist = [20185476, 20185475, 20185474, 20185473, 20185472, 20185470]
    stunamelist = ["xx1", "xx2", "xx3", "xx4", "xx5", "xx6"]
    data = {}
    data["经度"] = xlist
    data["纬度"] = ylist
    data["学号"] = stunolist
    data["姓名"] = stunamelist
    scatter = dh.scatter_charts(data)
    scatter.render('scatter.html')
  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
Pyecharts是一个基于Python的数据可视化库,可以用于生成各种类型的图表。自定义提示框Pyecharts的一个功能,可以通过设置提示框的样式和内容来增强图表的交互性和可读性。 要实现自定义提示框,可以使用Pyecharts的Tooltip组件。通过设置Tooltip的属性,可以自定义提示框的样式和内容。以下是实现自定义提示框的步骤: 1. 创建一个图表对象,例如Bar、Line等。 2. 使用add()方法添加数据和配置项。 3. 创建一个Tooltip对象,并设置其属性,例如设置提示框的背景色、边框样式等。 4. 使用set_series_opts()方法设置图表系列的配置项,其包括设置提示框自定义的Tooltip对象。 5. 使用render()方法生成图表。 下面是一个示例代码,展示如何使用Pyecharts实现自定义提示框: ```python from pyecharts import options as opts from pyecharts.charts import Bar # 创建一个Bar图表对象 bar = Bar() # 添加数据和配置项 bar.add_xaxis(["A", "B", "C", "D", "E"]) bar.add_yaxis("Series", [1, 3, 2, 4, 5]) # 创建一个Tooltip对象,并设置其属性 tooltip_opts = opts.TooltipOpts( is_show=True, background_color="rgba(0, 0, 0, 0.7)", border_color="#fff", border_width=1, formatter="{b}: {c}" ) # 设置图表系列的配置项,包括设置提示框自定义的Tooltip对象 bar.set_series_opts(tooltip_opts=tooltip_opts) # 生成图表 bar.render("custom_tooltip.html") ``` 在上述示例,我们创建了一个Bar图表对象,并添加了数据和配置项。然后,创建了一个Tooltip对象,并设置了其属性,包括背景色、边框样式等。最后,通过set_series_opts()方法将提示框设置自定义的Tooltip对象。最终使用render()方法生成图表。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寂寞烟火~

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值