如何在 web2py 中呈现 PyChart.JS 个图表?

how do I render PyChart.JS charts in web2py?

所以我正在尝试使用 PyChartJS 模块,到目前为止我已经有了这个。 这是饼图的 class:

class newPieChart(BaseChart):

def setData(self, _data: dict):
    self.data.data = [_ for _ in _data.values()]
    return

def setLabels(self, _labels: list):
    self.labels.labels = [_ for _ in _labels]
    return

type = ChartType.Pie

class labels:
    labels = []

class data:
    data = []

我正在使用 setData() 用数据填充图表

{'Allowance': 20.0, 'Bonus': 30.0, 'Other': 80.0, 'Salary': 300.0}

现在,每当我尝试 newPieChart.get() 时,我都会得到 JS 渲染所需的 JSON。就是这样 returns:

{'type': 'pie', 'data': {'labels': [], 'datasets': [{'data': [20.0, 30.0, 80.0, 300.0]}]}, 'options': {'plugins': {}}}

但是图表没有呈现,因为它在我的 JS 代码中是这样显示的:

{'type': 'pie', 'data': {'labels': [], 'datasets': [{'data': [20.0, 30.0, 80.0, 300.0]}]}, 'options': {'plugins': {}}}

我的问题是,如何正确呈现此图表?我该如何解决? 这就是我在 JavaScript 代码中实现它的方式:

var ctx = document.getElementById('expense').getContext('2d');
var expensechart = new Chart(ctx, {{=chart}})

我通过调用内置 XML() 帮助程序

解决了这个问题
var expensechart = new Chart(ctx, {{=XML(chart)}})

这解决了 JSON 在 HTML

中无法正确呈现的问题