个股中心
This commit is contained in:
@@ -404,10 +404,7 @@
|
||||
itemStyle: {
|
||||
borderRadius: 8
|
||||
},
|
||||
// label: {
|
||||
// show: false,
|
||||
// position: 'center'
|
||||
// },
|
||||
|
||||
emphasis: {
|
||||
label: {
|
||||
show: true,
|
||||
@@ -516,6 +513,7 @@
|
||||
},
|
||||
|
||||
onReady() {
|
||||
this.fetchData()
|
||||
// 页面就绪后,若默认选中的是板块分布,初始化饼图
|
||||
//if (this.activeType === 0) {
|
||||
this.initGraphChart(); // 初始化关系图
|
||||
@@ -541,6 +539,64 @@
|
||||
break;
|
||||
}
|
||||
},
|
||||
getPreviousDayDate(dateStr) {
|
||||
// 校验输入日期格式是否正确
|
||||
if (!/^\d{4}-\d{2}-\d{2}$/.test(dateStr)) {
|
||||
console.error('日期格式错误,请传入 YYYY-MM-DD 格式的日期');
|
||||
return '';
|
||||
}
|
||||
|
||||
// 创建日期对象(注意:月份是 0 开始的,所以需要处理)
|
||||
const [year, month, day] = dateStr.split('-').map(Number);
|
||||
const date = new Date(year, month - 1, day);
|
||||
|
||||
// 将日期减一天
|
||||
date.setDate(date.getDate() - 1);
|
||||
|
||||
// 格式化前一天的日期为 YYYYMMDD 格式(补零处理)
|
||||
const prevYear = date.getFullYear();
|
||||
const prevMonth = String(date.getMonth() + 1).padStart(2, '0');
|
||||
const prevDay = String(date.getDate()).padStart(2, '0');
|
||||
|
||||
return `${prevYear}${prevMonth}${prevDay}`;
|
||||
},
|
||||
/**
|
||||
* 请求接口数据(优化:动态日期+自动时间戳)
|
||||
*/
|
||||
async fetchData() {
|
||||
try {
|
||||
// 1. 自动生成当前时间戳(替代固定值)
|
||||
const timestamp = new Date().getTime();
|
||||
|
||||
|
||||
// 调用上面的函数,获取前一天的格式化日期(YYYYMMDD)
|
||||
const formattedDate = this.getPreviousDayDate(this.selectedFullDate);
|
||||
const requestUrl = `https://valuefrontier.cn/data/zt/daily/${formattedDate}.json?t=${timestamp}`;
|
||||
console.log('请求URL:', requestUrl); // 打印URL便于调试
|
||||
|
||||
const res = await uni.request({
|
||||
url: requestUrl,
|
||||
method: 'GET'
|
||||
});
|
||||
|
||||
if (res.statusCode === 200 && res.data) {
|
||||
this.originData = res.data;
|
||||
console.log('接口数据请求成功', this.originData.chart_data );
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: '数据请求失败',
|
||||
icon: 'none'
|
||||
});
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('请求异常:', error);
|
||||
uni.showToast({
|
||||
title: '网络异常',
|
||||
icon: 'none'
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
// 初始化关系图(增加容错)
|
||||
async initGraphChart() {
|
||||
|
||||
@@ -557,350 +613,399 @@
|
||||
// 初始化饼图(核心修复)
|
||||
async initPieChart() {
|
||||
|
||||
const Piechart = await this.$refs.chartRef.init(echarts);
|
||||
console.log("Piechart", Piechart);
|
||||
Piechart.setOption(this.pieOption);
|
||||
// const Piechart = await this.$refs.chartRef.init(echarts);
|
||||
// console.log("Piechart", Piechart);
|
||||
// Piechart.setOption(this.pieOption);
|
||||
try {
|
||||
// 处理饼图数据:将labels和counts组合成name/value格式
|
||||
let pieData = [];
|
||||
const chartData = this.originData.chart_data || {};
|
||||
const labels = chartData.labels || [];
|
||||
const counts = chartData.counts || [];
|
||||
|
||||
// 遍历组合数据,确保数组长度一致
|
||||
const maxLen = Math.min(labels.length, counts.length);
|
||||
for (let i = 0; i < maxLen; i++) {
|
||||
pieData.push({
|
||||
name: labels[i], // 板块名称
|
||||
value: counts[i] // 对应数量
|
||||
});
|
||||
}
|
||||
|
||||
// 更新饼图配置的data
|
||||
this.pieOption.series[0].data = pieData.length > 0 ? pieData : [
|
||||
{ value: 10, name: '科技板块' },
|
||||
{ value: 8, name: '人脑工程' },
|
||||
{ value: 9, name: '商业航天' }
|
||||
];
|
||||
|
||||
// 初始化ECharts并设置配置
|
||||
if (this.$refs.chartRef) {
|
||||
const Piechart = await this.$refs.chartRef.init(echarts);
|
||||
console.log("Piechart实例创建成功", Piechart);
|
||||
Piechart.setOption(this.pieOption);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('饼图初始化失败:', error);
|
||||
}
|
||||
|
||||
},
|
||||
// 初始化词云
|
||||
initWordCloud() {
|
||||
this.wordData = [{
|
||||
name: "脑机",
|
||||
value: 10000
|
||||
},
|
||||
{
|
||||
name: "航天",
|
||||
value: 3428
|
||||
},
|
||||
{
|
||||
name: "商业",
|
||||
value: 1747
|
||||
},
|
||||
{
|
||||
name: "智能",
|
||||
value: 1692
|
||||
},
|
||||
{
|
||||
name: "量产",
|
||||
value: 1589
|
||||
},
|
||||
{
|
||||
name: "落地",
|
||||
value: 1555
|
||||
},
|
||||
{
|
||||
name: "存储芯片",
|
||||
value: 1487
|
||||
},
|
||||
{
|
||||
name: "医疗",
|
||||
value: 1348
|
||||
},
|
||||
{
|
||||
name: "马斯克",
|
||||
value: 1346
|
||||
},
|
||||
{
|
||||
name: "业绩",
|
||||
value: 1234
|
||||
},
|
||||
{
|
||||
name: "康复",
|
||||
value: 1143
|
||||
},
|
||||
{
|
||||
name: "机器人",
|
||||
value: 1127
|
||||
},
|
||||
{
|
||||
name: "洁净室",
|
||||
value: 1078
|
||||
},
|
||||
{
|
||||
name: "标的",
|
||||
value: 1072
|
||||
},
|
||||
{
|
||||
name: "设备",
|
||||
value: 1071
|
||||
},
|
||||
{
|
||||
name: "算力",
|
||||
value: 1015
|
||||
},
|
||||
{
|
||||
name: "材料",
|
||||
value: 983
|
||||
},
|
||||
{
|
||||
name: "卫星",
|
||||
value: 970
|
||||
},
|
||||
{
|
||||
name: "科技",
|
||||
value: 947
|
||||
},
|
||||
{
|
||||
name: "资产",
|
||||
value: 828
|
||||
},
|
||||
{
|
||||
name: "半导体",
|
||||
value: 774
|
||||
},
|
||||
{
|
||||
name: "重估",
|
||||
value: 750
|
||||
},
|
||||
{
|
||||
name: "人脑",
|
||||
value: 747
|
||||
},
|
||||
{
|
||||
name: "平台",
|
||||
value: 737
|
||||
},
|
||||
{
|
||||
name: "产业链",
|
||||
value: 726
|
||||
},
|
||||
{
|
||||
name: "赛道",
|
||||
value: 715
|
||||
},
|
||||
{
|
||||
name: "电池",
|
||||
value: 694
|
||||
},
|
||||
{
|
||||
name: "估值",
|
||||
value: 689
|
||||
},
|
||||
{
|
||||
name: "景气",
|
||||
value: 682
|
||||
},
|
||||
{
|
||||
name: "A股",
|
||||
value: 662
|
||||
},
|
||||
{
|
||||
name: "商业化",
|
||||
value: 643
|
||||
},
|
||||
{
|
||||
name: "固态",
|
||||
value: 642
|
||||
},
|
||||
{
|
||||
name: "工程",
|
||||
value: 642
|
||||
},
|
||||
{
|
||||
name: "军工",
|
||||
value: 642
|
||||
},
|
||||
{
|
||||
name: "芯片",
|
||||
value: 615
|
||||
},
|
||||
{
|
||||
name: "医疗器械",
|
||||
value: 606
|
||||
},
|
||||
{
|
||||
name: "供应链",
|
||||
value: 585
|
||||
},
|
||||
{
|
||||
name: "弹性",
|
||||
value: 573
|
||||
},
|
||||
{
|
||||
name: "蓝箭",
|
||||
value: 551
|
||||
},
|
||||
{
|
||||
name: "市值",
|
||||
value: 541
|
||||
},
|
||||
{
|
||||
name: "高端",
|
||||
value: 527
|
||||
},
|
||||
{
|
||||
name: "植入",
|
||||
value: 523
|
||||
},
|
||||
{
|
||||
name: "耗材",
|
||||
value: 523
|
||||
},
|
||||
{
|
||||
name: "逻辑",
|
||||
value: 519
|
||||
},
|
||||
{
|
||||
name: "数据",
|
||||
value: 512
|
||||
},
|
||||
{
|
||||
name: "服务器",
|
||||
value: 504
|
||||
},
|
||||
{
|
||||
name: "供应商",
|
||||
value: 503
|
||||
},
|
||||
{
|
||||
name: "电子",
|
||||
value: 483
|
||||
},
|
||||
{
|
||||
name: "芳纶",
|
||||
value: 458
|
||||
},
|
||||
{
|
||||
name: "传闻",
|
||||
value: 454
|
||||
},
|
||||
{
|
||||
name: "国产化",
|
||||
value: 453
|
||||
},
|
||||
{
|
||||
name: "营销",
|
||||
value: 452
|
||||
},
|
||||
{
|
||||
name: "涨价",
|
||||
value: 450
|
||||
},
|
||||
{
|
||||
name: "临床",
|
||||
value: 449
|
||||
},
|
||||
{
|
||||
name: "转型",
|
||||
value: 444
|
||||
},
|
||||
{
|
||||
name: "强脑",
|
||||
value: 441
|
||||
},
|
||||
{
|
||||
name: "储能",
|
||||
value: 441
|
||||
},
|
||||
{
|
||||
name: "智能家居",
|
||||
value: 438
|
||||
},
|
||||
{
|
||||
name: "场景",
|
||||
value: 435
|
||||
},
|
||||
{
|
||||
name: "港股",
|
||||
value: 423
|
||||
},
|
||||
{
|
||||
name: "柔性",
|
||||
value: 422
|
||||
},
|
||||
{
|
||||
name: "人形",
|
||||
value: 414
|
||||
},
|
||||
{
|
||||
name: "国产",
|
||||
value: 411
|
||||
},
|
||||
{
|
||||
name: "接口技术",
|
||||
value: 401
|
||||
},
|
||||
{
|
||||
name: "消费",
|
||||
value: 399
|
||||
},
|
||||
{
|
||||
name: "创板",
|
||||
value: 397
|
||||
},
|
||||
{
|
||||
name: "全球",
|
||||
value: 389
|
||||
},
|
||||
{
|
||||
name: "替代",
|
||||
value: 389
|
||||
},
|
||||
{
|
||||
name: "融资",
|
||||
value: 388
|
||||
},
|
||||
{
|
||||
name: "补贴",
|
||||
value: 369
|
||||
},
|
||||
{
|
||||
name: "管线",
|
||||
value: 368
|
||||
},
|
||||
{
|
||||
name: "电极",
|
||||
value: 367
|
||||
},
|
||||
{
|
||||
name: "模态",
|
||||
value: 364
|
||||
},
|
||||
{
|
||||
name: "国家",
|
||||
value: 361
|
||||
},
|
||||
{
|
||||
name: "盈利",
|
||||
value: 359
|
||||
},
|
||||
{
|
||||
name: "测试",
|
||||
value: 356
|
||||
},
|
||||
{
|
||||
name: "子公司",
|
||||
value: 354
|
||||
},
|
||||
{
|
||||
name: "实控",
|
||||
value: 353
|
||||
},
|
||||
{
|
||||
name: "八院",
|
||||
value: 353
|
||||
},
|
||||
{
|
||||
name: "价格",
|
||||
value: 352
|
||||
},
|
||||
{
|
||||
name: "旗下",
|
||||
value: 351
|
||||
},
|
||||
{
|
||||
name: "组件",
|
||||
value: 346
|
||||
},
|
||||
{
|
||||
name: "电解液",
|
||||
value: 342
|
||||
},
|
||||
{
|
||||
name: "中标",
|
||||
value: 340
|
||||
}
|
||||
];
|
||||
if (this.originData.word_freq_data && Array.isArray(this.originData.word_freq_data)) {
|
||||
// 直接赋值接口返回的词频数据
|
||||
this.wordData = this.originData.word_freq_data;
|
||||
console.log('词云数据赋值完成', this.wordData);
|
||||
|
||||
} else {
|
||||
// 兜底默认数据
|
||||
this.wordData = [{
|
||||
name: "脑机",
|
||||
value: 10000
|
||||
}, {
|
||||
name: "航天",
|
||||
value: 3428
|
||||
}];
|
||||
}
|
||||
|
||||
|
||||
// this.wordData = [{
|
||||
// name: "脑机",
|
||||
// value: 10000
|
||||
// },
|
||||
// {
|
||||
// name: "航天",
|
||||
// value: 3428
|
||||
// },
|
||||
// {
|
||||
// name: "商业",
|
||||
// value: 1747
|
||||
// },
|
||||
// {
|
||||
// name: "智能",
|
||||
// value: 1692
|
||||
// },
|
||||
// {
|
||||
// name: "量产",
|
||||
// value: 1589
|
||||
// },
|
||||
// {
|
||||
// name: "落地",
|
||||
// value: 1555
|
||||
// },
|
||||
// {
|
||||
// name: "存储芯片",
|
||||
// value: 1487
|
||||
// },
|
||||
// {
|
||||
// name: "医疗",
|
||||
// value: 1348
|
||||
// },
|
||||
// {
|
||||
// name: "马斯克",
|
||||
// value: 1346
|
||||
// },
|
||||
// {
|
||||
// name: "业绩",
|
||||
// value: 1234
|
||||
// },
|
||||
// {
|
||||
// name: "康复",
|
||||
// value: 1143
|
||||
// },
|
||||
// {
|
||||
// name: "机器人",
|
||||
// value: 1127
|
||||
// },
|
||||
// {
|
||||
// name: "洁净室",
|
||||
// value: 1078
|
||||
// },
|
||||
// {
|
||||
// name: "标的",
|
||||
// value: 1072
|
||||
// },
|
||||
// {
|
||||
// name: "设备",
|
||||
// value: 1071
|
||||
// },
|
||||
// {
|
||||
// name: "算力",
|
||||
// value: 1015
|
||||
// },
|
||||
// {
|
||||
// name: "材料",
|
||||
// value: 983
|
||||
// },
|
||||
// {
|
||||
// name: "卫星",
|
||||
// value: 970
|
||||
// },
|
||||
// {
|
||||
// name: "科技",
|
||||
// value: 947
|
||||
// },
|
||||
// {
|
||||
// name: "资产",
|
||||
// value: 828
|
||||
// },
|
||||
// {
|
||||
// name: "半导体",
|
||||
// value: 774
|
||||
// },
|
||||
// {
|
||||
// name: "重估",
|
||||
// value: 750
|
||||
// },
|
||||
// {
|
||||
// name: "人脑",
|
||||
// value: 747
|
||||
// },
|
||||
// {
|
||||
// name: "平台",
|
||||
// value: 737
|
||||
// },
|
||||
// {
|
||||
// name: "产业链",
|
||||
// value: 726
|
||||
// },
|
||||
// {
|
||||
// name: "赛道",
|
||||
// value: 715
|
||||
// },
|
||||
// {
|
||||
// name: "电池",
|
||||
// value: 694
|
||||
// },
|
||||
// {
|
||||
// name: "估值",
|
||||
// value: 689
|
||||
// },
|
||||
// {
|
||||
// name: "景气",
|
||||
// value: 682
|
||||
// },
|
||||
// {
|
||||
// name: "A股",
|
||||
// value: 662
|
||||
// },
|
||||
// {
|
||||
// name: "商业化",
|
||||
// value: 643
|
||||
// },
|
||||
// {
|
||||
// name: "固态",
|
||||
// value: 642
|
||||
// },
|
||||
// {
|
||||
// name: "工程",
|
||||
// value: 642
|
||||
// },
|
||||
// {
|
||||
// name: "军工",
|
||||
// value: 642
|
||||
// },
|
||||
// {
|
||||
// name: "芯片",
|
||||
// value: 615
|
||||
// },
|
||||
// {
|
||||
// name: "医疗器械",
|
||||
// value: 606
|
||||
// },
|
||||
// {
|
||||
// name: "供应链",
|
||||
// value: 585
|
||||
// },
|
||||
// {
|
||||
// name: "弹性",
|
||||
// value: 573
|
||||
// },
|
||||
// {
|
||||
// name: "蓝箭",
|
||||
// value: 551
|
||||
// },
|
||||
// {
|
||||
// name: "市值",
|
||||
// value: 541
|
||||
// },
|
||||
// {
|
||||
// name: "高端",
|
||||
// value: 527
|
||||
// },
|
||||
// {
|
||||
// name: "植入",
|
||||
// value: 523
|
||||
// },
|
||||
// {
|
||||
// name: "耗材",
|
||||
// value: 523
|
||||
// },
|
||||
// {
|
||||
// name: "逻辑",
|
||||
// value: 519
|
||||
// },
|
||||
// {
|
||||
// name: "数据",
|
||||
// value: 512
|
||||
// },
|
||||
// {
|
||||
// name: "服务器",
|
||||
// value: 504
|
||||
// },
|
||||
// {
|
||||
// name: "供应商",
|
||||
// value: 503
|
||||
// },
|
||||
// {
|
||||
// name: "电子",
|
||||
// value: 483
|
||||
// },
|
||||
// {
|
||||
// name: "芳纶",
|
||||
// value: 458
|
||||
// },
|
||||
// {
|
||||
// name: "传闻",
|
||||
// value: 454
|
||||
// },
|
||||
// {
|
||||
// name: "国产化",
|
||||
// value: 453
|
||||
// },
|
||||
// {
|
||||
// name: "营销",
|
||||
// value: 452
|
||||
// },
|
||||
// {
|
||||
// name: "涨价",
|
||||
// value: 450
|
||||
// },
|
||||
// {
|
||||
// name: "临床",
|
||||
// value: 449
|
||||
// },
|
||||
// {
|
||||
// name: "转型",
|
||||
// value: 444
|
||||
// },
|
||||
// {
|
||||
// name: "强脑",
|
||||
// value: 441
|
||||
// },
|
||||
// {
|
||||
// name: "储能",
|
||||
// value: 441
|
||||
// },
|
||||
// {
|
||||
// name: "智能家居",
|
||||
// value: 438
|
||||
// },
|
||||
// {
|
||||
// name: "场景",
|
||||
// value: 435
|
||||
// },
|
||||
// {
|
||||
// name: "港股",
|
||||
// value: 423
|
||||
// },
|
||||
// {
|
||||
// name: "柔性",
|
||||
// value: 422
|
||||
// },
|
||||
// {
|
||||
// name: "人形",
|
||||
// value: 414
|
||||
// },
|
||||
// {
|
||||
// name: "国产",
|
||||
// value: 411
|
||||
// },
|
||||
// {
|
||||
// name: "接口技术",
|
||||
// value: 401
|
||||
// },
|
||||
// {
|
||||
// name: "消费",
|
||||
// value: 399
|
||||
// },
|
||||
// {
|
||||
// name: "创板",
|
||||
// value: 397
|
||||
// },
|
||||
// {
|
||||
// name: "全球",
|
||||
// value: 389
|
||||
// },
|
||||
// {
|
||||
// name: "替代",
|
||||
// value: 389
|
||||
// },
|
||||
// {
|
||||
// name: "融资",
|
||||
// value: 388
|
||||
// },
|
||||
// {
|
||||
// name: "补贴",
|
||||
// value: 369
|
||||
// },
|
||||
// {
|
||||
// name: "管线",
|
||||
// value: 368
|
||||
// },
|
||||
// {
|
||||
// name: "电极",
|
||||
// value: 367
|
||||
// },
|
||||
// {
|
||||
// name: "模态",
|
||||
// value: 364
|
||||
// },
|
||||
// {
|
||||
// name: "国家",
|
||||
// value: 361
|
||||
// },
|
||||
// {
|
||||
// name: "盈利",
|
||||
// value: 359
|
||||
// },
|
||||
// {
|
||||
// name: "测试",
|
||||
// value: 356
|
||||
// },
|
||||
// {
|
||||
// name: "子公司",
|
||||
// value: 354
|
||||
// },
|
||||
// {
|
||||
// name: "实控",
|
||||
// value: 353
|
||||
// },
|
||||
// {
|
||||
// name: "八院",
|
||||
// value: 353
|
||||
// },
|
||||
// {
|
||||
// name: "价格",
|
||||
// value: 352
|
||||
// },
|
||||
// {
|
||||
// name: "旗下",
|
||||
// value: 351
|
||||
// },
|
||||
// {
|
||||
// name: "组件",
|
||||
// value: 346
|
||||
// },
|
||||
// {
|
||||
// name: "电解液",
|
||||
// value: 342
|
||||
// },
|
||||
// {
|
||||
// name: "中标",
|
||||
// value: 340
|
||||
// }
|
||||
// ];
|
||||
|
||||
//console.log('父页面设置词云数据:', JSON.stringify(this.wordData));
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user