js的代码是这样的
<script src="/static/js/echarts.js"></script>
<script src="/static/js/echarts.min.js"></script>
<div id="main8" style="width:400px;height: 450px"></div>
<script type="text/javascript">
// 初始化词云图实例
var myWordCloud = echarts.init(document.getElementById('main8'));
// 使用Flask传递的数据直接作为JavaScript变量
province1 ={{ province1| tojson }}
people1 ={{ people1| tojson }}
// 调整数据格式,确保符合词云图的要求
var wordCloudData = [];
for (var i = 0; i < province1.length; i++) {
wordCloudData.push({ name:province1[i], value: people1[i]});
}
option8 = {
tooltip: {},
series: [{
type: 'wordCloud',
gridSize: 20,
sizeRange: [12, 50],
rotationRange: [-90, 90],
shape: 'circle',
textStyle: {
normal: {
color: function () {
return 'rgb(' + [
Math.round(Math.random() * 160),
Math.round(Math.random() * 160),
Math.round(Math.random() * 160)
].join(',') + ')';
}
}
},
data: wordCloudData // 使用调整后的数据
}]
};
myWordCloud.setOption(option8);
</script>
app.py的代码:
df1= pd.read_csv('C:\\Users\\Lenovo\\PycharmProjects\\flaskProject4\\output.csv',encoding='GBK')
province1 = df1['省份'].tolist()
people1 = df1['其中农民工子女人数'].tolist()
@app.route('/word')
def word():
email = session.get('email')
return render_template("word.html", email = email, province1=province1,people1=people1)