V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Ginson
V2EX  ›  Python

pyecharts 诡异问题求解,同一个图表在不同模板中渲染出来数值相反?

  •  
  •   Ginson · 2021-08-17 21:04:52 +08:00 · 915 次点击
    这是一个创建于 980 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我做了一个记账小工具,按月把支出情况以折线图表示,但同一个图表在不同模板中渲染出来数值相反,一时间给我整懵了,不知道问题出在哪,恳请大家帮看看

    在 html 模板 A 中渲染结果是这样的
    A
    但在 html 模板 B 中渲染结果确是这样的…?!
    B

    折线图生成函数如下

    def make_echart():
        line = Line(init_opts=opts.InitOpts(
            height="400px", width="100%"
        ))
        dates = list(set([
            x.ctime.strftime("%Y-%m")
            for x in Log.query.filter_by(type_name="支出").all()
            ]))
        dates.sort()
        outlay = []
        for d in dates:
            y,m = d.split("-")
            outlay.append(round(
                Log.query.with_entities(func.sum(Log.money)).filter(
                    extract('year', Log.ctime) == y,
                    extract('month', Log.ctime) == m,
                    Log.type_name == '支出',
                    Log.kind_name != '房贷'
                ).first()[0], 2)
            )
        line.add_xaxis(xaxis_data=dates)
        line.add_yaxis(
            series_name="支出",
            y_axis=outlay,
            markline_opts=opts.MarkLineOpts(
                data=[opts.MarkLineItem(type_="average", name="平均支出")]
            )
        )
        return line.render_embed()
    

    折线图都是用同样的模板语法传进去的

    <div class="echart">{{echart|safe}}</div>
    

    我也在 flask shell 里面运行了图表生成函数,返回的代码里面数值是正值的,但不知道为什么到页面上就变成负值了

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5318 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 08:20 · PVG 16:20 · LAX 01:20 · JFK 04:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.