gpt4 book ai didi

javascript - 尝试为我的 chartjs 和 googlecharts 使用 axios、vuejs 和虚拟 api(仅获取请求)

转载 作者:行者123 更新时间:2023-11-30 19:01:10 28 4
gpt4 key购买 nike

我正在尝试将 axios 与包含此数据的链接结合使用:{ "2015": 226, "2016": 152, "2017": 259, "2018": 265, "2019": 275},用 JSON 编写。

我想实现这些数据,例如年份:2017 年和收入:此图表中的 259:

//BARCHART
var ctx = document.getElementById("myChart");
var barChart = new Chart(ctx, {
type: 'bar',
data: {
labels: ["2016", "2017", "2018", "2019", "2020"],
datasets: [
{
label: 'Vergangenheit', //Vergangenheit = Past
data: [226, 152, 259, 265, 0],
backgroundColor: 'rgba(110, 205, 126, 1)',
borderColor: 'rgba(110, 205, 126, 1)',
borderWidth: 1,
}
]
},

options: {
responsive: true,
responsiveAnimationDuration: 0,
maintainAspectRatio: true,
aspectRatio: 2,
oneResie: null,
scales: {
yAxes: [
{
ticks: {
beginAtZero: true
}
}
]
}
}

});

结合使用 vue 和 axios,一个 get 请求应该是这样的:

var vm = new Vue({
el: '#get',
data: {
messages: [],
message: ""
},
mounted: function () {
this.getMessages(); // get all messages automatically when the page is loaded
},
methods: {
getMessages: function() {
axios.get('(hiddenhttps:/api/GewinnNachJahr')
.then( (res) => {
this.messages = res.data;
console.log(response.data)
})
},
}
});

我不希望为获取请求按下任何按钮,它应该在重新加载页面时始终获取该数据。我已经尝试了一些来自 stackoverflow 的代码片段,官方的 axios github 根本没有帮助我。

总而言之,我希望在我的 http 数据上使用 axios getrequest,然后保存和排序这些数据并在我的 chart.js 条形图中实现它。我认为仅使用我的 java.js 就足够了。

对于所花费的时间和精力,我深表歉意。提前谢谢你。

最佳答案

您可以将 chart.js 实现到您的 vue 应用程序中。我已经创建了这段代码,它应该可以工作。

   var vm = new Vue({
el: "#get",
data: {
messages: [],
message: "",
labels: [],
data_set: [],
barChart: ""
},
mounted: function() {
var ctx = document.getElementById("myChart");
this.barChart = new Chart(ctx, {
type: "bar",
data: {
labels: this.labels,
datasets: [
{
label: "Vergangenheit", //Vergangenheit = Past
data: this.data_set,
backgroundColor: "rgba(110, 205, 126, 1)",
borderColor: "rgba(110, 205, 126, 1)",
borderWidth: 1
}
]
},

options: {
responsive: true,
responsiveAnimationDuration: 0,
maintainAspectRatio: true,
aspectRatio: 2,
oneResie: null,
scales: {
yAxes: [
{
ticks: {
beginAtZero: true
}
}
]
}
}
});
},
created: function() {
this.getMessages(); // get all messages automatically when the page is loaded
},
methods: {
getMessages: function() {

axios
.get(
"https://webenggroup06ln3.free.beeceptor.com/zalando/api/GewinnNachJahr"
)
.then(res => {
console.log(res.data);
for (let [key, value] of Object.entries(res.data)) {
this.labels.push(key);
this.data_set.push(value);
}
this.$nextTick(function() {
this.barChart.update();
});
});
}
}
});

for 循环将您的键和值分开,然后将其插入数据数组。将所有内容插入数组后,图表只需要使用 this.barChart.update()

进行更新

关于javascript - 尝试为我的 chartjs 和 googlecharts 使用 axios、vuejs 和虚拟 api(仅获取请求),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59500090/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com