"How to plot the data on the Scatterplots using apexcharts"
"How to plot the data on the Scatterplots using apexcharts"
我在 Vue.js
中使用 apexchart 库来绘制散点图上的数据。我正在使用 Python 和 Flask 从后端获取数据。我能够从后端到前端获取数据,但是散点图没有显示任何内容,而且控制台上也没有错误。我的预期结果应该是包含我从后端获得的所有坐标值的散点图,即我的 .py 文件。
<template>
<div>
<div id="chart">
<apexchart type=scatter height=350 :options="chartOptions" :series="series" />
</div>
<div>
<p> {{ df }} </p>
</div>
</div>
</template>
<script>
import axios from 'axios';
import VueApexCharts from 'vue-apexcharts';
import Vue from 'vue';
Vue.use(VueApexCharts)
Vue.component('apexchart', VueApexCharts)
export default {
data: function() {
return {
df: [],
chartOptions: {
chart: {
zoom: {
enabled: true,
type: 'xy'
}
},
xaxis: {
tickAmount: 3,
},
yaxis: {
tickAmount: 3,
}
},
series: [{
name: 'series-1',
data: [[]]
}],
}
},
methods: {
getPoints() {
const path='http://localhost:5000/scatter';
axios.get(path)
.then((res) => {
this.df=res.data;
console.log(this.df)
})
.catch((error) => {
console.error(error);
});
},
},
created(){
this.getPoints();
},
};
</script>
#Backeend (.py file)
from flask import Flask, jsonify, request
from flask_cors import CORS
app = Flask(__name__)
app.config.from_object(__name__)
@app.route('/scatter',methods=['GET'])
def get_points():
return jsonify([[2, 3], [1, 5]])
Results which I am getting on the Browser
您在其中分配数据的 df 属性未用作图表的 series.data
。
最初,您在 series.data
中放置了一个空白数组,但在获取数据后,您似乎没有更新此数组。因此,您看到的可能是空白图表。
尝试将您的 getPoints 方法更新为此
getPoints() {
const path='http://localhost:5000/scatter';
axios.get(path)
.then((res) => {
this.series = [{
data: res.data
}]
})
.catch((error) => {
console.error(error);
});
}
我在 Vue.js
中使用 apexchart 库来绘制散点图上的数据。我正在使用 Python 和 Flask 从后端获取数据。我能够从后端到前端获取数据,但是散点图没有显示任何内容,而且控制台上也没有错误。我的预期结果应该是包含我从后端获得的所有坐标值的散点图,即我的 .py 文件。
<template>
<div>
<div id="chart">
<apexchart type=scatter height=350 :options="chartOptions" :series="series" />
</div>
<div>
<p> {{ df }} </p>
</div>
</div>
</template>
<script>
import axios from 'axios';
import VueApexCharts from 'vue-apexcharts';
import Vue from 'vue';
Vue.use(VueApexCharts)
Vue.component('apexchart', VueApexCharts)
export default {
data: function() {
return {
df: [],
chartOptions: {
chart: {
zoom: {
enabled: true,
type: 'xy'
}
},
xaxis: {
tickAmount: 3,
},
yaxis: {
tickAmount: 3,
}
},
series: [{
name: 'series-1',
data: [[]]
}],
}
},
methods: {
getPoints() {
const path='http://localhost:5000/scatter';
axios.get(path)
.then((res) => {
this.df=res.data;
console.log(this.df)
})
.catch((error) => {
console.error(error);
});
},
},
created(){
this.getPoints();
},
};
</script>
#Backeend (.py file)
from flask import Flask, jsonify, request
from flask_cors import CORS
app = Flask(__name__)
app.config.from_object(__name__)
@app.route('/scatter',methods=['GET'])
def get_points():
return jsonify([[2, 3], [1, 5]])
Results which I am getting on the Browser
您在其中分配数据的 df 属性未用作图表的 series.data
。
最初,您在 series.data
中放置了一个空白数组,但在获取数据后,您似乎没有更新此数组。因此,您看到的可能是空白图表。
尝试将您的 getPoints 方法更新为此
getPoints() {
const path='http://localhost:5000/scatter';
axios.get(path)
.then((res) => {
this.series = [{
data: res.data
}]
})
.catch((error) => {
console.error(error);
});
}