diff --git a/src/components/index.js b/src/components/index.js index 7864657..fee3ec7 100644 --- a/src/components/index.js +++ b/src/components/index.js @@ -13,6 +13,7 @@ import vTabGroup from "@/components/v-tab-group"; import vEcharts from "@/components/v-echars"; import vBtn from "@/components/v-btn"; import vLabelCtx from "@/components/v-label-ctx" +import vLabelTable from "@/components/v-label-table" import vPagination from "@/components/v-pagination" import vRanking from "@/components/v-ranking"; import vEcharsMap from "@/components/v-echars-map" @@ -29,6 +30,7 @@ export default { vEcharts, vBtn, vLabelCtx, + vLabelTable, vPagination, vRanking, vEcharsMap, diff --git a/src/components/v-label-table/index.vue b/src/components/v-label-table/index.vue new file mode 100644 index 0000000..13d1b0e --- /dev/null +++ b/src/components/v-label-table/index.vue @@ -0,0 +1,121 @@ + + + + + + diff --git a/src/router/index.js b/src/router/index.js index 766c9f3..35a206e 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -37,6 +37,9 @@ import ModelEventDetails from "@/views/ModelEventDetails" import ModelWeiboDetails from "@/views/ModelWeiboDetails" import ModelForumDetails from "@/views/ModelForumDetails" import ModelComparison from "@/views/ModelComparison" +import ThemeAnalize from "@/views/ThemeAnalize" +import ThemeData from "@/views/ThemeData" +import ThemeBoard from "@/views/ThemeBoard" import iSwitchEvent from "@/lycomponents/iSwitchEvent" const router = [ { @@ -176,7 +179,24 @@ const router = [ desc: "营销对比", component: mcIndex }, - + { + path: '/ThemeAnalize', + name: "ThemeAnalize", + desc: "主题分析", + component: ThemeAnalize + }, + { + path: '/ThemeData', + name: "ThemeData", + desc: "主题数据", + component: ThemeData + }, + { + path: '/ThemeBoard', + name: "ThemeBoard", + desc: "数据看板", + component: ThemeBoard + }, ] }, diff --git a/src/styles/antd.less b/src/styles/antd.less index 6b01082..e636c74 100644 --- a/src/styles/antd.less +++ b/src/styles/antd.less @@ -287,3 +287,42 @@ li.ant-calendar-time-picker-select-option-selected { .ant-modal-body { color: #fff !important; } + +.ant-tabs-card > .ant-tabs-content > .ant-tabs-tabpane { + background: rgb(26, 38, 65) !important; +} + +.ant-tabs-card > .ant-tabs-bar { + color: white; + border-color: rgb(26, 38, 65)!important; +} + +.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab { + border-color: transparent !important; + background: transparent !important; +} + +.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active { + border-color: rgb(26, 38, 65) !important; + background: rgb(26, 38, 65) !important; +} + +.ant-descriptions-row { + border-color: #63AECC !important; +} +.ant-descriptions > .ant-descriptions-view { + border-color: #63AECC !important; +} +.ant-descriptions-row > th { + background: #1B4163 !important; + border-color: #63AECC !important; + width: 400px !important; + color: #D8D8D8; +} + +.ant-descriptions-row > td { + background: #1B4163 !important; + border-color: #63AECC !important; + width: 400px !important; + color: #63AECC; +} \ No newline at end of file diff --git a/src/views/BrandInsight/forumCommunicationTrend/index.vue b/src/views/BrandInsight/forumCommunicationTrend/index.vue index 08a0c2d..3b53aed 100644 --- a/src/views/BrandInsight/forumCommunicationTrend/index.vue +++ b/src/views/BrandInsight/forumCommunicationTrend/index.vue @@ -39,8 +39,8 @@ export default { }, modelShow: false, ecbox:{//图表宽高 - width:1618, - height:1490 + width:618, + height:490 }, ecmodel:{//弹框宽高 width:300, diff --git a/src/views/BrandInsight/rearWingPropagationSituation/index.vue b/src/views/BrandInsight/rearWingPropagationSituation/index.vue index 2b0b104..d2a9b79 100644 --- a/src/views/BrandInsight/rearWingPropagationSituation/index.vue +++ b/src/views/BrandInsight/rearWingPropagationSituation/index.vue @@ -39,8 +39,8 @@ export default { }, modelShow: false, ecbox:{//图表宽高 - width:1618, - height:1490 + width:618, + height:490 }, ecmodel:{//弹框宽高 width:300, diff --git a/src/views/BrandInsight/weiboVolumeTrend/index.vue b/src/views/BrandInsight/weiboVolumeTrend/index.vue index ea8212e..46089c9 100644 --- a/src/views/BrandInsight/weiboVolumeTrend/index.vue +++ b/src/views/BrandInsight/weiboVolumeTrend/index.vue @@ -40,8 +40,8 @@ export default { }, modelShow: false, ecbox:{//图表宽高 - width:1618, - height:1490 + width:618, + height:490 }, ecmodel:{//弹框宽高 width:300, diff --git a/src/views/EventInsight/industryTOPHE/index.vue b/src/views/EventInsight/industryTOPHE/index.vue index 8f8f7ed..997642d 100644 --- a/src/views/EventInsight/industryTOPHE/index.vue +++ b/src/views/EventInsight/industryTOPHE/index.vue @@ -12,6 +12,7 @@
事件对比 + 主题分析
@@ -97,6 +98,9 @@ export default { goPath() { this.$router.push({path: '/eventComparison'}) }, + goTheme() { + this.$router.push({path: '/themeAnalize'}) + }, goRefresh() { this.form.sQudao = ""; this.form.sSeriesName = ""; diff --git a/src/views/ModelInsight/ml-tts/index.vue b/src/views/ModelInsight/ml-tts/index.vue index 6067332..a7149ad 100644 --- a/src/views/ModelInsight/ml-tts/index.vue +++ b/src/views/ModelInsight/ml-tts/index.vue @@ -50,8 +50,8 @@ export default { }, modelShow: false, ecbox:{//图表宽高 - width:1618, - height:1490 + width:618, + height:490 }, ecmodel:{//弹框宽高 width:300, diff --git a/src/views/ModelInsight/mlForumCommunicationTrend/index.vue b/src/views/ModelInsight/mlForumCommunicationTrend/index.vue index f4a9dd9..114a77b 100644 --- a/src/views/ModelInsight/mlForumCommunicationTrend/index.vue +++ b/src/views/ModelInsight/mlForumCommunicationTrend/index.vue @@ -39,8 +39,8 @@ export default { }, modelShow: false, ecbox:{//图表宽高 - width:1618, - height:1490 + width:618, + height:490 }, ecmodel:{//弹框宽高 width:300, diff --git a/src/views/ModelInsight/mlForumCommunicationTrend/opt.js b/src/views/ModelInsight/mlForumCommunicationTrend/opt.js index 21d25ee..4c86880 100644 --- a/src/views/ModelInsight/mlForumCommunicationTrend/opt.js +++ b/src/views/ModelInsight/mlForumCommunicationTrend/opt.js @@ -18,7 +18,7 @@ export default function createOpt(dx=[], ds=[], hotIndex = []) { symbolSize: 16, symbolOffset: [0, '-75%'], } - if(ds[ele] < 10) { + if(ds[ele] < 100) { obj.symbolOffset = [0, '-15%'] } mark.push(obj) diff --git a/src/views/ModelInsight/mlWeiboVolumeTrend/index.vue b/src/views/ModelInsight/mlWeiboVolumeTrend/index.vue index 0560e47..8afd142 100644 --- a/src/views/ModelInsight/mlWeiboVolumeTrend/index.vue +++ b/src/views/ModelInsight/mlWeiboVolumeTrend/index.vue @@ -40,8 +40,8 @@ export default { }, modelShow: false, ecbox:{//图表宽高 - width:1618, - height:1490 + width:618, + height:490 }, ecmodel:{//弹框宽高 width:300, diff --git a/src/views/ModelInsight/mlWeiboVolumeTrend/opt.js b/src/views/ModelInsight/mlWeiboVolumeTrend/opt.js index c11568e..05741d3 100644 --- a/src/views/ModelInsight/mlWeiboVolumeTrend/opt.js +++ b/src/views/ModelInsight/mlWeiboVolumeTrend/opt.js @@ -18,7 +18,7 @@ export default function createOpt(dx = [], ds = [], hotIndex = []) { symbolSize: 16, symbolOffset: [0, '-75%'], } - if(ds[ele] < 10) { + if(ds[ele] < 100) { obj.symbolOffset = [0, '-15%'] } mark.push(obj) diff --git a/src/views/ThemeAnalize/index.vue b/src/views/ThemeAnalize/index.vue new file mode 100644 index 0000000..41c6393 --- /dev/null +++ b/src/views/ThemeAnalize/index.vue @@ -0,0 +1,229 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeAnalize/newThemeModal/index.vue b/src/views/ThemeAnalize/newThemeModal/index.vue new file mode 100644 index 0000000..30be0a6 --- /dev/null +++ b/src/views/ThemeAnalize/newThemeModal/index.vue @@ -0,0 +1,49 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/BigvAnalize/index.vue b/src/views/ThemeBoard/BigvAnalize/index.vue new file mode 100644 index 0000000..2b98fd2 --- /dev/null +++ b/src/views/ThemeBoard/BigvAnalize/index.vue @@ -0,0 +1,78 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/BloggerArea/index.vue b/src/views/ThemeBoard/BloggerArea/index.vue new file mode 100644 index 0000000..ae3fd39 --- /dev/null +++ b/src/views/ThemeBoard/BloggerArea/index.vue @@ -0,0 +1,17 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/CoreTransformUser/index.vue b/src/views/ThemeBoard/CoreTransformUser/index.vue new file mode 100644 index 0000000..9bbe1fb --- /dev/null +++ b/src/views/ThemeBoard/CoreTransformUser/index.vue @@ -0,0 +1,17 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/EventTransform/index.vue b/src/views/ThemeBoard/EventTransform/index.vue new file mode 100644 index 0000000..6e15ca6 --- /dev/null +++ b/src/views/ThemeBoard/EventTransform/index.vue @@ -0,0 +1,21 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/PeopleAuthen/index.vue b/src/views/ThemeBoard/PeopleAuthen/index.vue new file mode 100644 index 0000000..8a9d683 --- /dev/null +++ b/src/views/ThemeBoard/PeopleAuthen/index.vue @@ -0,0 +1,21 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/PeopleGender/index.vue b/src/views/ThemeBoard/PeopleGender/index.vue new file mode 100644 index 0000000..699602d --- /dev/null +++ b/src/views/ThemeBoard/PeopleGender/index.vue @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/SourceDivide/index.vue b/src/views/ThemeBoard/SourceDivide/index.vue new file mode 100644 index 0000000..b9b8106 --- /dev/null +++ b/src/views/ThemeBoard/SourceDivide/index.vue @@ -0,0 +1,82 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/SourceDivide/opt.js b/src/views/ThemeBoard/SourceDivide/opt.js new file mode 100644 index 0000000..384d26c --- /dev/null +++ b/src/views/ThemeBoard/SourceDivide/opt.js @@ -0,0 +1,80 @@ +/* + * @Author: your name + * @Date: 2021-10-12 14:33:51 + * @LastEditTime: 2021-10-29 19:20:12 + * @LastEditors: Please set LastEditors + * @Description: In User Settings Edit + * @FilePath: /data-show/src/views/BrandInsight/weiboKol/opt.js + */ +import * as echarts from "echarts"; +function createData(ds=[], colors=[]) { + let arr = []; + for(let i = 0; i < ds.length; i++) { + let ele = ds[i]; + if(ele.value*1 > 0) { + let obj = { value: ele.value*1, name: ele.key, itemStyle: { + color: new echarts.graphic.LinearGradient(0, 1, 1, 0, [{ + //给颜色设置渐变色 前面4个参数,给第一个设置1,第四个设置0 ,就是水平渐变 + //给第一个设置0,第四个设置1,就是垂直渐变 + offset: 0, + color: 'black' + }, { + offset: 1, + color: colors[i] + }]) + }}; + arr.push(obj) + } + } + return arr; +} +export default function createOpt(ds = [], colors= []) { + const data = createData(ds, colors) + return { + series: [ + { + name: 'Access From0', + type: 'pie', + radius: ['65%', '80%'], + avoidLabelOverlap: false, + label: { + show: false, + position: 'center', + lineHeight: 30 + }, + emphasis: { + label: { + show: true, + fontSize: '20', + color: "#ffff", + fontWeight: 'bold', + formatter: function (p) { + return `${p.data.name}\n${p.percent}%\n${p.data.value}` + } + } + }, + labelLine: { + show: false + }, + data: data, + + }, + { + name: 'Access From1', + type: 'pie', + radius: ['86%', '94%'], + avoidLabelOverlap: false, + label: { + show: false, + position: 'center' + }, + labelLine: { + show: false + }, + center: ['50%', '50%'],//边框位置 + data: data, + + } + ] + } +} diff --git a/src/views/ThemeBoard/ThemeSource/index.vue b/src/views/ThemeBoard/ThemeSource/index.vue new file mode 100644 index 0000000..6bb75b6 --- /dev/null +++ b/src/views/ThemeBoard/ThemeSource/index.vue @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/TotalSource/index.vue b/src/views/ThemeBoard/TotalSource/index.vue new file mode 100644 index 0000000..cedf07a --- /dev/null +++ b/src/views/ThemeBoard/TotalSource/index.vue @@ -0,0 +1,33 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/TotalSource/opt.js b/src/views/ThemeBoard/TotalSource/opt.js new file mode 100644 index 0000000..e69de29 diff --git a/src/views/ThemeBoard/TotalVolume/index.vue b/src/views/ThemeBoard/TotalVolume/index.vue new file mode 100644 index 0000000..52fd161 --- /dev/null +++ b/src/views/ThemeBoard/TotalVolume/index.vue @@ -0,0 +1,36 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/TotalVolume/opt.js b/src/views/ThemeBoard/TotalVolume/opt.js new file mode 100644 index 0000000..e69de29 diff --git a/src/views/ThemeBoard/TransformAnalize/index.vue b/src/views/ThemeBoard/TransformAnalize/index.vue new file mode 100644 index 0000000..b96edc8 --- /dev/null +++ b/src/views/ThemeBoard/TransformAnalize/index.vue @@ -0,0 +1,149 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/TransformAnalize/v-ranking-kmd/index.vue b/src/views/ThemeBoard/TransformAnalize/v-ranking-kmd/index.vue new file mode 100644 index 0000000..d49ce40 --- /dev/null +++ b/src/views/ThemeBoard/TransformAnalize/v-ranking-kmd/index.vue @@ -0,0 +1,230 @@ + + + + + + diff --git a/src/views/ThemeBoard/TransformMethod/index.vue b/src/views/ThemeBoard/TransformMethod/index.vue new file mode 100644 index 0000000..2569b64 --- /dev/null +++ b/src/views/ThemeBoard/TransformMethod/index.vue @@ -0,0 +1,17 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/UserArea/index.vue b/src/views/ThemeBoard/UserArea/index.vue new file mode 100644 index 0000000..db1505b --- /dev/null +++ b/src/views/ThemeBoard/UserArea/index.vue @@ -0,0 +1,21 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/UserTopic/index.vue b/src/views/ThemeBoard/UserTopic/index.vue new file mode 100644 index 0000000..072eecf --- /dev/null +++ b/src/views/ThemeBoard/UserTopic/index.vue @@ -0,0 +1,21 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/VolumeArea/index.vue b/src/views/ThemeBoard/VolumeArea/index.vue new file mode 100644 index 0000000..098beae --- /dev/null +++ b/src/views/ThemeBoard/VolumeArea/index.vue @@ -0,0 +1,48 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/VolumeArea/opt1.js b/src/views/ThemeBoard/VolumeArea/opt1.js new file mode 100644 index 0000000..3fd7054 --- /dev/null +++ b/src/views/ThemeBoard/VolumeArea/opt1.js @@ -0,0 +1,83 @@ + + +/* + * @Author: your name + * @Date: 2021-10-09 12:38:34 + * @LastEditTime: 2021-10-14 11:48:19 + * @LastEditors: Please set LastEditors + * @Description: In User Settings Edit + * @FilePath: /data-show/src/views/Index/tailInsight/opt.js + */ +import * as echarts from "echarts"; +import { bigNumberTransform } from "@/utils/gol/dataTool" +export default function createOptD1(dx=[],ds=[]) { + return { + grid: { + left: 16, + right: '5%', + bottom: 10, + top: "1%", + containLabel: true + }, + tooltip: { + trigger: "axis", + backgroundColor: "#08182F", + color: "#fff", + borderColor: "#3373CC", + textStyle: { + color: "#fff", //设置文字颜色 + }, + extraCssText: "box-shadow: 0px 0px 10px 0px #3373CC;" + }, + xAxis: { + type: 'value', + axisLine: { + show: false, + lineStyle: { + color: "#fff", + }, + }, + axisLabel: { + formatter: (value) => { + let str = bigNumberTransform(value); + return str; + } + }, + splitLine: { + lineStyle: { + type: "dashed", // y轴分割线类型 + color: "#012b4b", + }, + }, + }, + yAxis: { + type: 'category', + data: dx, + axisTick: { + show: false, + }, + axisLine: { + show: false, + lineStyle: { + color: "#fff", + }, + }, + inverse: true + }, + series: [ + { + name: '2011', + type: 'bar', + barWidth: 20, + data: ds, + color: new echarts.graphic.LinearGradient(0, 0, 1, 0, [{ + offset: 0, + color: '#010B19' + }, { + offset: 1, + color: '#2f68b4' + }]), + } + ] + } +} diff --git a/src/views/ThemeBoard/VolumeArea/opt2.js b/src/views/ThemeBoard/VolumeArea/opt2.js new file mode 100644 index 0000000..c961002 --- /dev/null +++ b/src/views/ThemeBoard/VolumeArea/opt2.js @@ -0,0 +1,94 @@ +/* + * @Author: your name + * @Date: 2021-10-14 11:53:16 + * @LastEditTime: 2021-11-04 17:17:02 + * @LastEditors: Please set LastEditors + * @Description: In User Settings Edit + * @FilePath: /data-show/src/views/WeiboDetails/weiboUserActiveArea/opt2.js + */ + +export default function createOptD2(dm) { + return { + tooltip: { + trigger: "item", + backgroundColor: "#08182F", + color: "#fff", + borderColor: "#3373CC", + textStyle: { + color: "#fff", //设置文字颜色 + }, + extraCssText: "box-shadow: 0px 0px 10px 0px #3373CC;" + }, + // geo: { + // show: true, + // map: 'china', + // roam: false,//地图设置不可拖拽,固定的 + // itemStyle: { + // normal: { + // borderWidth: 0, + // shadowColor: 'rgba(0,54,255, 1)', + // shadowBlur: 100 + // } + // } + // }, + visualMap: { + type: 'continuous', + show: false, + min: 0, + max: 2000, + text: ['高', '低'], + orient: 'horizontal', + itemWidth: 15, + itemHeight: 200, + right: 0, + bottom: 30, + inRange: { + color: ['#0393d2', '#75ddff'] + }, + textStyle: { + color: 'white' + } + }, + series: [ + { + name: "微博区域", + type: "map", + mapType: "china", + roam: false, + zoom: 1,//默认地图在容器中显示zoom:1,可根据需求放大缩小地图 + left: 16, + top: 20, + right: 10, + bottom: 10, + selectedMode:'multiple', + colorBy: 'data', + itemStyle: { + areaColor: '#001f5b',//地图区域背景颜色 + borderColor: '#005cf9',//地图边界颜色 + shadowColor: '#005cf9', + emphasis: { + areaColor: '#3066ba',//鼠标滑过区域颜色 + label: { + color: '#fff' + } + } + }, + label: { + normal: { + show: false + }, + }, + + // select: { + // label: { + // show: false + // }, + // itemStyle: { + // areaColor: '#3edffe' + // } + // }, + data: dm + } + ] + } +} diff --git a/src/views/ThemeBoard/WeiboAnalize/index.vue b/src/views/ThemeBoard/WeiboAnalize/index.vue new file mode 100644 index 0000000..99e7a4e --- /dev/null +++ b/src/views/ThemeBoard/WeiboAnalize/index.vue @@ -0,0 +1,71 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/WordCloud/index.vue b/src/views/ThemeBoard/WordCloud/index.vue new file mode 100644 index 0000000..1281682 --- /dev/null +++ b/src/views/ThemeBoard/WordCloud/index.vue @@ -0,0 +1,39 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeBoard/index.vue b/src/views/ThemeBoard/index.vue new file mode 100644 index 0000000..bea4ce0 --- /dev/null +++ b/src/views/ThemeBoard/index.vue @@ -0,0 +1,151 @@ + + + + + \ No newline at end of file diff --git a/src/views/ThemeData/index.vue b/src/views/ThemeData/index.vue new file mode 100644 index 0000000..0c13c5f --- /dev/null +++ b/src/views/ThemeData/index.vue @@ -0,0 +1,138 @@ + + + + + \ No newline at end of file