亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Vue框架的云南省教育扶貧可視化系統(tǒng)設(shè)計與實現(xiàn)

        2022-05-30 10:34:58呂維廣,申浩如,孫定蜜,楊延仁,胡正南,黎諜,饒肖
        電腦知識與技術(shù) 2022年32期
        關(guān)鍵詞:教育扶貧云南省

        呂維廣,申浩如,孫定蜜,楊延仁,胡正南,黎諜,饒肖

        摘要:通過對云南省教育扶貧階段性成果進(jìn)行分析,確定數(shù)據(jù)、名言、模范、地圖、政策、學(xué)術(shù)6個典型展示維度,采用前后端分離開發(fā)模式和增量軟件開發(fā)模型,基于Vue、ECharts、Maven、MySQL工具,設(shè)計開發(fā)該信息可視化系統(tǒng)。將云南省教育扶貧積累的異構(gòu)、多源、空間相關(guān)數(shù)據(jù)進(jìn)行表征,以數(shù)字化動態(tài)交互形式展現(xiàn)出來,為云南省教育精準(zhǔn)扶貧提供直觀的可視化分析手段,形成窗口宣傳效應(yīng)。

        關(guān)鍵詞:云南?。唤逃鲐?;可視化系統(tǒng);Vue;ECharts

        中圖分類號:TP311.52? ? ? 文獻(xiàn)標(biāo)識碼:A

        文章編號:1009-3044(2022)32-0034-04

        1 概述

        教育扶貧是贏得中國脫貧攻堅全面勝利的重要一役。由于云南省的地理復(fù)雜性和民族多樣性,使云南教育扶貧更具挑戰(zhàn)性。本文基于數(shù)據(jù)統(tǒng)計原理,綜合使用Vue、ECharts、Maven等工具對云南省相關(guān)教育扶貧數(shù)據(jù)進(jìn)行可視化表征,從地理空間和非地理空間維度直觀展現(xiàn)這些海量、異構(gòu)、多源數(shù)據(jù),為政府職能部門、教育行政主管部門、學(xué)術(shù)研究群體提供有價值的可視化結(jié)果,助推云南省教育扶貧精準(zhǔn)施策,實現(xiàn)貧困人口“脫真貧、真脫貧”[1]的愿景。

        2 云南省教育扶貧可視化系統(tǒng)總體設(shè)計

        2.1 系統(tǒng)架構(gòu)設(shè)計

        教育扶貧可視化系統(tǒng)采用B/S體系結(jié)構(gòu),前端使用Vue框架,它是一個擴(kuò)展性和復(fù)用性較強(qiáng)的輕量級漸進(jìn)式JavaScript框架,基于數(shù)據(jù)驅(qū)動、交互展示和視圖組件化構(gòu)建前端頁面[2]。后端服務(wù)程序使用Maven項目管理工具創(chuàng)建,自動管理依賴包和版本配置,通過IDEA一鍵發(fā)布調(diào)試,大幅降低包的版本依賴問題[3]。最終將負(fù)責(zé)業(yè)務(wù)邏輯的后端工程打包通過阿里云Tomcat服務(wù)器發(fā)布。

        前后端數(shù)據(jù)交互使用axios進(jìn)行異步請求同步化處理,減輕后端數(shù)據(jù)處理壓力[4]。前后端分離開發(fā),前端代碼由阿里云的對象存儲OSS服務(wù)托管,降低服務(wù)器帶寬壓力[5]。此外,為解決前后端分離開發(fā)導(dǎo)致的跨域請求問題,項目使用Filter過濾器對請求進(jìn)行過濾處理[6]。底層數(shù)據(jù)存管采用MySQL數(shù)據(jù)庫。系統(tǒng)架構(gòu)如圖1所示。

        系統(tǒng)選用增量軟件開發(fā)模型。原因有三:1)開發(fā)時人員可靈活分配,能在較短時間內(nèi)向甲方提交部分可操作產(chǎn)品,有效解決了參與系統(tǒng)開發(fā)的學(xué)生成員因?qū)W業(yè)導(dǎo)致頻繁換人的客觀實際。2)采用“分而治之”思想,把問題分解成可控的子模塊,先完成需求穩(wěn)定的核心構(gòu)件,避免團(tuán)隊因長時間需求任務(wù)而感到沮喪。3)增量模型并非一步跨到未來,讓開發(fā)者逐步適應(yīng)全棧開發(fā)技術(shù),符合在校學(xué)生軟件開發(fā)訓(xùn)練的普遍規(guī)律。

        系統(tǒng)架構(gòu)設(shè)計必須注意:1)增量開發(fā)模型最大特點是具有較好的擴(kuò)展性,在開發(fā)過程中必須注意接口定義。2)由于系統(tǒng)各個模塊之間耦合度較低,導(dǎo)致代碼的審查難度增加,容易出現(xiàn)代碼冗余情況,所以必須定義好一個可行的開發(fā)過程。3)由于各個組件是逐步并入軟件體系架構(gòu)中,系統(tǒng)內(nèi)核是十分關(guān)鍵的部分,內(nèi)核不精簡將會使增量模型退化成邊做邊改模型[7]。

        項目開發(fā)中的依賴庫如表1所示。

        2.2 功能模塊設(shè)計

        系統(tǒng)有6個模塊:教育扶貧里程碑、每日扶貧金句、教育扶貧先鋒模范、地圖可視化綜合交互展示、教育扶貧政策方針、教育扶貧學(xué)術(shù)研究。根據(jù)不同數(shù)據(jù)屬性將這些數(shù)據(jù)分別通過柱狀圖、曲線圖、堆疊圖、矢量地圖、輪播圖、主題詞云等多種可視化形式進(jìn)行表征,詳見表2。

        2.3 后臺數(shù)據(jù)庫設(shè)計

        后端資源通過MySQL存儲,使用JDBC連接池工具進(jìn)行數(shù)據(jù)庫連接管理,優(yōu)點是無須手動管理數(shù)據(jù)庫連接對象,按需取用,使用結(jié)束釋放回連接池即可,避免數(shù)據(jù)庫未被釋放帶來的風(fēng)險。根據(jù)系統(tǒng)功能描述,設(shè)計數(shù)據(jù)庫表,其中下劃線字段為表主鍵:

        1)城市:city (ID, 城市名, 所屬縣名, 扶貧舉措)。進(jìn)庫記錄88條。

        2)金句:famous_remarks (ID, 發(fā)布時間, 內(nèi)容, 發(fā)言人) 。進(jìn)庫記錄12條。

        3)人物:people (ID, 姓名, 身份、事跡簡介) 。進(jìn)庫記錄27條。

        4)政策:policy (ID, 政策名稱, 發(fā)布機(jī)構(gòu), 官方URL) 。進(jìn)庫記錄42條。

        5)詞云:word_cloud (ID, 關(guān)鍵詞, 引用次數(shù)) 。進(jìn)庫記錄1000條。

        3 云南省教育扶貧可視化系統(tǒng)核心功能實現(xiàn)

        3.1 系統(tǒng)界面

        圖2給出了云南省教育扶貧可視化系統(tǒng)界面設(shè)計,界面以深紅主調(diào)為背景,嵌入了省會昆明市的傳統(tǒng)地標(biāo)“金馬碧雞”牌坊和新建地標(biāo)高度407米的“春之眼”,以及滇西重鎮(zhèn)大理市的蒼山元素,寓意近年云南省扶貧取得的豐碩成果。

        3.2 圖文信息展示模塊

        教育扶貧里程碑、每日扶貧金句、教育扶貧模范這三個模塊主要使用Element UI組件劃分頁面框架,并利用CSS渲染文字,同時還使用JavaScript結(jié)合@keyframes實現(xiàn)圖片和文字的滾動播放效果。

        3.3 基于ECharts和地理信息標(biāo)注的可視化模塊

        針對項目開發(fā)難度較大的地圖綜合展示模塊,該模塊采用ECharts的map類型地圖圖表,將具有空間地理特征的信息可視表征。首先,地圖繪制是通過阿里云提供的數(shù)據(jù)可視化平臺http://datav.aliyun.com獲取云南省地理數(shù)據(jù)結(jié)構(gòu)編碼JSON文件,在渲染前將文件通過GET或POST方法獲得地理結(jié)構(gòu)數(shù)據(jù),之后使用echarts.registerMap('yunnan', geoJson)方法注冊地圖,然后對地圖進(jìn)行相關(guān)配置。在配置項中,data是該圖表渲染數(shù)據(jù)的接口,其中包括城市名和權(quán)值(決定地圖塊著色深淺),渲染時可根據(jù)城市名和權(quán)值進(jìn)行自動關(guān)聯(lián),權(quán)值越高的城市區(qū)域顯示顏色越深。城市顏色渲染梯度是通過配置視覺映射組件visualMap控制。代碼如下:

        geo:{ //地理坐標(biāo)系組件,支持地理坐標(biāo)上繪制散點、線集

        type:'map', //指定圖表類型為地圖

        map:'yunnan', //自定義擴(kuò)展圖表類型,參數(shù)使用注冊時的變量名

        roam:true, //關(guān)閉移動漫游

        zoom:1.2, //設(shè)置初始化地圖縮放比例

        selectedMode:false, //設(shè)為不可移動地圖

        data:mapData, //地圖渲染數(shù)據(jù)包括:mapData{[name:城市名,value:權(quán)值]}

        label: {

        show: false, //不顯示標(biāo)簽

        fontSize: '50px' //設(shè)置標(biāo)簽顯示字體大小

        },

        }

        visualMap: [{ //視覺映射組件配置

        bottom: '45%', //組件離容器底部位置

        left:'5%', //組件離容器左邊位置

        text: ['High', 'Low'], //兩端的文字

        realtime: true, //拖拽時實時更新渲染

        calculable: true, //顯示拖拽手柄,手柄能拖拽調(diào)整選中范圍

        }]

        同時在地圖上標(biāo)注“州市”散點圖,在上述geo地理坐標(biāo)系統(tǒng)進(jìn)行疊加渲染,配置時data是散點圖渲染的數(shù)據(jù)接口,數(shù)據(jù)結(jié)構(gòu)包括必選項散點geo坐標(biāo)位置和附加描述信息項,并指明該散點圖是基于何種坐標(biāo)系渲染。默認(rèn)情況下鼠標(biāo)移動到散點上浮動提示框只顯示諸如經(jīng)緯度和地名等默認(rèn)信息,如要顯示指定描述信息需通過配置浮動提示框tooltip實現(xiàn),如要實現(xiàn)根據(jù)點擊對象判斷顯示指定信息,則需配置formatter。formatter既可接收一段靜態(tài)html格式代碼也可接收一個匿名函數(shù)function(param),函數(shù)被調(diào)用時傳入?yún)?shù)param標(biāo)識了被點擊的唯一元素,即被點擊元素類型和對應(yīng)geo坐標(biāo)及附加描述信息,通過對點元素的判斷來選擇顯示內(nèi)容,代碼如下:

        series: [ //散點圖配置

        {

        data: scatterdata, //散點坐標(biāo)數(shù)據(jù)data:[“value”:[經(jīng)度,緯度],”name”:”地名”,”text”:”描述信息”]

        type: 'scatter', //設(shè)置圖表類型為散點圖

        coordinateSystem:'geo', //設(shè)置散點使用的坐標(biāo)系統(tǒng)

        symbolSize: 20, //散點大小

        color:'red' //散點顏色

        }

        ]

        tooltip:{ //浮動提示框配置

        show:true,

        backgroundColor: "rgba(203,203,203,0.8)", //設(shè)置背景圖片RGBA格式

        borderWidth: 0, //邊框?qū)挾仍O(shè)置1

        borderColor: "aqua", //設(shè)置邊框顏色

        padding:0, //邊框?qū)挾?/p>

        textStyle:{ //配置提示框文本格式

        fontSize:'40px',

        color:'rgba(254,255,86)'

        },

        triggger:'item', //觸發(fā)類型

        formatter:function(param){ //函數(shù)方式返回提示框信息

        return '

        '+param.data.name+'
        '; //顯示點擊元素數(shù)據(jù)中變量name的數(shù)據(jù)

        }

        }

        }

        由于地圖和今昔對比圖展示于同一“

        ”標(biāo)簽中,在ECharts作圖時需將兩圖配置信息寫入配置數(shù)組。同時兩張圖表均按用戶交互需求通過POST方法從服務(wù)器動態(tài)更新數(shù)據(jù),這使得配置項中的數(shù)據(jù)部分不會被固定,而是留下一個數(shù)據(jù)接口,隨用戶點擊動態(tài)調(diào)用,并同步刷新圖表Vue地圖組件。同理,今昔校園對比照片也跟隨用戶點擊動態(tài)從服務(wù)器拉取圖片,通過監(jiān)聽click事件向服務(wù)器發(fā)送POST請求報文刷新圖片。代碼如下:

        mapChart.on('click', function (params) { //監(jiān)聽點擊事件

        if(params.componentSubType=='map'){ //判斷是否點擊了地圖組件

        City(params.name).then(data => { //通過axios獲取數(shù)據(jù)

        var testdata=[] //設(shè)置空變量

        for(var i in data){ //遍歷數(shù)據(jù)

        testdata.push(data[i]) //在空變量中填充要渲染的數(shù)據(jù)

        }

        citydata.value=testdata //把最新數(shù)據(jù)同步給數(shù)據(jù)接口

        })

        landname.value=params.name //同步點擊的州市名

        //根據(jù)點擊的州市名用require方法獲取對應(yīng)今夕對比圖片

        imgland1.value =require('@/assets/land/'+params.name+'1.jpg')

        imgland2.value =require('@/assets/land/'+params.name+'2.jpg')

        }

        })

        教育扶貧政策方針模塊通過詞云展示相關(guān)政策的關(guān)鍵詞,該模塊利用第三方工具圖悅詞頻分析軟件對所遴選的教育政策進(jìn)行詞頻分析,使用Python對數(shù)據(jù)進(jìn)行清洗上傳數(shù)據(jù)庫。在設(shè)置ECharts詞云配置項時應(yīng)注意不僅要導(dǎo)入echarts插件還應(yīng)導(dǎo)入echarts_wordcloud依賴插件。詞云不同于其他模塊的配置,不僅需要配置data數(shù)據(jù)接口,data數(shù)據(jù)結(jié)構(gòu)包括關(guān)鍵詞和引用次數(shù),還要傳入蒙版圖片數(shù)據(jù)maskImage,用于限定詞云的邊界輪廓。蒙版圖片需選擇一張黑白圖,轉(zhuǎn)化為base64編碼字符串,本項目選用一張中國地圖作為邊界輪廓。代碼如下:

        var maskImage = new Image(); //創(chuàng)建一個Image類型對象

        maskImage.src = image //將邊界輪廓的base64編碼字符串賦值給maskImage的src屬性

        series: [{ //詞云圖配置項

        type: 'wordCloud', //指定圖表類型為詞云

        gridSize: 1, //設(shè)置文字間隔

        shape: 'circle', //設(shè)置詞云形狀

        sizeRange: [12, 55], //設(shè)置文字字號范圍

        maskImage: maskImage, //渲染圖形的Image對象

        textStyle: {

        fontSize: '50px', //字體大小

        color: function () { //設(shè)置文本顏色,采用隨機(jī)生成色

        return 'rgb(' + [

        Math.round(Math.random() * 255),

        Math.round(Math.random() * 150),

        Math.round(Math.random() * 150)

        ].join(',') + ')'

        }

        }

        3.4 基于CNKI的學(xué)術(shù)文獻(xiàn)可視化模塊

        在CNKI文獻(xiàn)數(shù)據(jù)庫以“篇名=教育扶貧”O(jiān)R“主題=教育扶貧”為關(guān)鍵詞進(jìn)行檢索,期刊來源為CSSCI和北大核心,查詢年限為2021年12月31日前,共搜索有效學(xué)術(shù)文獻(xiàn)947篇。使用ECharts曲線圖、柱狀圖、餅圖工具對年發(fā)文量、主/次要主題分布TOP10、文獻(xiàn)來源分布TOP10、學(xué)科領(lǐng)域分布TOP10、作者及單位分布TOP8繪制統(tǒng)計圖表。

        3.5 系統(tǒng)實現(xiàn)相關(guān)問題

        由于界面容納元素較多,各元素之間又相互關(guān)聯(lián)和復(fù)用,為簡化開發(fā)流程、提高代碼復(fù)用率,在開發(fā)過程中使用Vue路由功能將各個元素單獨編程,最終由Home路由集中管理、組織這些組件。另外,官網(wǎng)[8]暫未給出在Vue中使用ECharts的方案,這與使用原生JavaScript開發(fā)有較大區(qū)別,但Vue代碼源自JavaScript,只要遵循JavaScript的語法規(guī)則便能解決大部分問題。

        目前,整個項目側(cè)重前端框架實現(xiàn),主要使用Vue2接口標(biāo)準(zhǔn)以及部分Vue3標(biāo)準(zhǔn),接下來擬使用Vue3標(biāo)準(zhǔn),以簡化編程難度,提升項目性能。后端開發(fā)仍有較大提升空間,擬使用微服務(wù)架構(gòu),增強(qiáng)后端的可維護(hù)性和可擴(kuò)展性。此外,現(xiàn)階段數(shù)據(jù)采集實現(xiàn)過程是人工搜集后通過腳本半自動存儲到數(shù)據(jù)庫,擬采用爬蟲從互聯(lián)網(wǎng)上爬取數(shù)據(jù)自動存儲到數(shù)據(jù)庫。

        4 結(jié)束語

        本文采用B/S結(jié)構(gòu),構(gòu)建了一個前后端分離的信息可視化系統(tǒng),前端使用Vue框架,后端使用Maven項目,并通過MySQL實現(xiàn)數(shù)據(jù)存儲與管理。該系統(tǒng)是云南省教育扶貧數(shù)字化表達(dá)的優(yōu)勢載體,一方面為相關(guān)部門提供決策依據(jù),另一方面為社會公眾及時了解教育扶貧現(xiàn)狀提供信息展示,從而增強(qiáng)公眾對推進(jìn)教育

        公平性建設(shè)的信心和自覺參與教育扶貧的意愿。下一步將與云南省教育廳規(guī)劃辦進(jìn)一步合作,采集各地建檔立卡貧困學(xué)生數(shù)據(jù),進(jìn)行去隱私化操作,結(jié)合各

        州市教育資源配置數(shù)據(jù),如學(xué)校硬件設(shè)施、師資隊伍、學(xué)生輟學(xué)率等,進(jìn)一步優(yōu)化迭代可視化設(shè)計方案,推出內(nèi)容維度更豐富的云南教育扶貧可視化項目。

        參考文獻(xiàn):

        [1] 習(xí)近平.決勝全面建成小康社會 奪取新時代中國特色社會主義偉大勝利[R].北京:中國共產(chǎn)黨第十九次全國代表大會,2017.

        [2] Vue工作團(tuán)隊.Vue.js簡介[EB/OL].[2022-03-20].https://cn.vuejs.org/guide/introduction.html#api-styles.

        [3] The Apache Software Foundation. Apache Maven Project[EB/OL].[2022-03-20].https://maven.apache.org/what-is-maven.html.

        [4] 百度百科.Web數(shù)據(jù)交互方式[EB/OL]. [2022-03-20].https://baike.baidu.com/item/axios/56933453?fr=aladdin.

        [5] 阿里云幫助中心.什么是對象存儲OSS[EB/OL]. [2022-03-20].https://help.aliyun.com/document_detail/31817.html.

        [6] runoob.Filter、FilterChain、FilterConfig介紹[EB/OL]. [2022-03-20].https://www.runoob.com/w3cnote/filter-filterchain-filterconfig-intro.html.

        [7] 百度百科.邊做邊改模型[EB/OL]. [2022-03-20].https://baike.baidu.com/item/%E8%BE%B9%E5%81%9A%E8%BE%B9%E6%94%B9%E6%A8%A1%E5%9E%8B/1861054?fr=aladdin

        [8] The Apache Software Foundation. Apache ECharts[EB/OL].[2022-03-20].https://echarts.apache.org/zh/index.html.

        【通聯(lián)編輯:謝媛媛】

        猜你喜歡
        教育扶貧云南省
        云南省安寧市老年大學(xué)之歌
        民國初期云南省議會述論
        云南省瑞麗市老年大學(xué)之歌
        教育扶貧,助力精準(zhǔn)扶貧
        關(guān)于全面建成小康社會的教育扶貧工作研究
        新時期特困地區(qū)農(nóng)村學(xué)校體育發(fā)展機(jī)遇探析
        教育貧困與教育扶貧現(xiàn)狀調(diào)查
        近31年來云南省潛在蒸散量的時空演變
        欧美一片二片午夜福利在线快| 最新中文字幕一区二区| 久久综合狠狠综合久久综合88| 久久精品人人做人人爽电影蜜月| 激情久久无码天堂| 伊人久久综合狼伊人久久| 国产精品国产三级第一集| 欧美一区二区三区红桃小说| 亚洲久无码中文字幕热| 久久精品中文字幕免费| 亚洲精品国产av成人精品| 国产精品伦一区二区三级视频| 内射欧美老妇wbb| 久久久久国色av∨免费看| 天堂网av在线| av一区无码不卡毛片| 亚洲自拍另类欧美综合| 中文字幕亚洲精品高清| 国产精品久久久黄色片| 熟妇人妻无乱码中文字幕av| 久久不见久久见中文字幕免费| 无码的精品免费不卡在线| 91精品国产91久久综合桃花| 亚洲天堂av大片暖暖| 一道本久久综合久久鬼色| 国产精品熟女视频一区二区| jlzzjlzz全部女高潮| 久久精品伊人久久精品| 日韩欧美亚洲国产精品字幕久久久| 国产成人麻豆精品午夜福利在线 | 精品18在线观看免费视频| 精品国产av一区二区三区| 韩国三级在线观看久| 抽插丰满内射高潮视频| 亚洲AV无码精品色午夜超碰| 一本到亚洲av日韩av在线天堂 | 久久久久亚洲av无码专区首jn| 国产小毛片| 久久91精品国产91久久跳舞| 亚洲精品国产成人片| 无码毛片aaa在线|