網(wǎng)站壓縮山西網(wǎng)絡(luò)營(yíng)銷seo
🧑 博主簡(jiǎn)介:曾任某智慧城市類企業(yè)
算法總監(jiān)
,目前在美國(guó)市場(chǎng)的物流公司從事高級(jí)算法工程師
一職,深耕人工智能領(lǐng)域,精通python數(shù)據(jù)挖掘、可視化、機(jī)器學(xué)習(xí)等,發(fā)表過(guò)AI相關(guān)的專利并多次在AI類比賽中獲獎(jiǎng)。CSDN人工智能領(lǐng)域的優(yōu)質(zhì)創(chuàng)作者,提供AI相關(guān)的技術(shù)咨詢、項(xiàng)目開(kāi)發(fā)和個(gè)性化解決方案等服務(wù),如有需要請(qǐng)站內(nèi)私信或者聯(lián)系任意文章底部的的VX名片(ID:xf982831907
)
💬 博主粉絲群介紹:① 群內(nèi)初中生、高中生、本科生、研究生、博士生遍布,可互相學(xué)習(xí),交流困惑。② 熱榜top10的??鸵苍谌豪?#xff0c;也有數(shù)不清的萬(wàn)粉大佬,可以交流寫(xiě)作技巧,上榜經(jīng)驗(yàn),漲粉秘籍。③ 群內(nèi)也有職場(chǎng)精英,大廠大佬,可交流技術(shù)、面試、找工作的經(jīng)驗(yàn)。④ 進(jìn)群免費(fèi)贈(zèng)送寫(xiě)作秘籍一份,助你由寫(xiě)作小白晉升為創(chuàng)作大佬。⑤ 進(jìn)群贈(zèng)送CSDN評(píng)論防封腳本,送真活躍粉絲,助你提升文章熱度。有興趣的加文末聯(lián)系方式,備注自己的CSDN昵稱,拉你進(jìn)群,互相學(xué)習(xí)共同進(jìn)步。
【數(shù)據(jù)可視化-10】國(guó)防科技大學(xué)錄取分?jǐn)?shù)線可視化分析
- 一、引言
- 二、數(shù)據(jù)準(zhǔn)備
- 三、Pyecharts簡(jiǎn)介
- 四、數(shù)據(jù)可視化分析
- 4.1 省份理科一本線分布圖
- 4.2 工程技術(shù)類錄取分?jǐn)?shù)分布圖
- 4.3 學(xué)歷教育合訓(xùn)類錄取分?jǐn)?shù)分布圖
- 4.4 分?jǐn)?shù)結(jié)合地圖的展示
- 4.4.1 地圖熱力圖
- 4.4.2 3D地圖+3D柱狀圖工程技術(shù)類錄取最高分情況
- 五、結(jié)論
一、引言
??在當(dāng)今信息爆炸的時(shí)代,數(shù)據(jù)可視化成為了一種強(qiáng)有力的工具,能夠幫助我們直觀地理解和分析復(fù)雜的數(shù)據(jù)集。本文將利用Python的Pyecharts庫(kù),對(duì)國(guó)防科技大學(xué)2016年的錄取分?jǐn)?shù)數(shù)據(jù)進(jìn)行可視化分析。通過(guò)圖表展示,我們可以清晰地看到不同省份的錄取分?jǐn)?shù)分布情況,為考生和家長(zhǎng)提供有價(jià)值的參考信息。
二、數(shù)據(jù)準(zhǔn)備
??首先,我們需要準(zhǔn)備好國(guó)防科技大學(xué)2016年的錄取分?jǐn)?shù)數(shù)據(jù)。數(shù)據(jù)包含以下字段:省份、理科一本線、工程技術(shù)類最高分、工程技術(shù)類最低分、工程技術(shù)類平均分、學(xué)歷教育合訓(xùn)類最高分、學(xué)歷教育合訓(xùn)類最低分、學(xué)歷教育合訓(xùn)類平均分。以下是部分?jǐn)?shù)據(jù)示例:
省份 | 理科一本線 | 工程技術(shù)類最高分 | 工程技術(shù)類最低分 | 工程技術(shù)類平均分 | 學(xué)歷教育合訓(xùn)類最高分 | 學(xué)歷教育合訓(xùn)類最低分 | 學(xué)歷教育合訓(xùn)類平均分 |
---|---|---|---|---|---|---|---|
北京 | 548 | 662 | 607 | 629 | 613 | 570 | 592 |
天津 | 512 | 659 | 634 | 649 | 600 | 537 | 567 |
河北 | 525 | 682 | 654 | 667 | 669 | 640 | 649 |
山西 | 519 | 639 | 617 | 625 | 638 | 579 | 599 |
內(nèi)蒙古 | 484 | 641 | 615 | 627 | 623 | 558 | 597 |
遼寧 | 498 | 660 | 624 | 637 | 641 | 607 | 621 |
吉林 | 530 | 658 | 639 | 649 | 634 | 599 | 615 |
黑龍江 | 486 | 667 | 623 | 641 | 628 | 580 | 600 |
??詳細(xì)數(shù)據(jù)參考國(guó)防科技大學(xué)招生官網(wǎng)國(guó)防科技大學(xué)招生官網(wǎng) 或者聯(lián)系我。
三、Pyecharts簡(jiǎn)介
??Pyecharts是一個(gè)用于生成Echarts圖表的Python庫(kù)。Echarts是一個(gè)使用JavaScript實(shí)現(xiàn)的開(kāi)源可視化庫(kù),能夠生成豐富的交互式圖表。Pyecharts通過(guò)將Echarts的圖表轉(zhuǎn)化為Python代碼,使得在Python環(huán)境下也能方便地生成高質(zhì)量的圖表。
四、數(shù)據(jù)可視化分析
??接下來(lái),我們將使用Pyecharts庫(kù)對(duì)國(guó)防科技大學(xué)2016年的錄取分?jǐn)?shù)數(shù)據(jù)進(jìn)行可視化分析。
??首先導(dǎo)入數(shù)據(jù)并對(duì)數(shù)據(jù)中的異常值進(jìn)行清洗,具體代碼如下:
import numpy as np
import pandas as pddata = pd.read_excel("data.xlsx")def replace_mean(df,col='A'):"col列中的'/'用這一列的均值來(lái)替換"df[col] = df[col].replace('/', np.nan)mean_A = df[col].mean(skipna=True)df[col].fillna(mean_A, inplace=True)for col in ['學(xué)歷教育合訓(xùn)類最高分','學(xué)歷教育合訓(xùn)類最低分','學(xué)歷教育合訓(xùn)類平均分']:replace_mean(data,col)
4.1 省份理科一本線分布圖
??首先,我們繪制一個(gè)柱狀圖,展示不同省份的理科一本線分布情況。
from pyecharts import options as opts
from pyecharts.charts import Barc = (Bar().add_xaxis(data['省 份'].tolist()).add_yaxis("理科一本線", data['理科一本線'].tolist()).set_global_opts(title_opts=opts.TitleOpts(title="國(guó)防科技大學(xué)2016年理科一本線錄取分?jǐn)?shù)", subtitle="各省分?jǐn)?shù)情況分布")).render("bar_base.html")
)
??生成的柱狀圖清晰地展示了不同省份的理科一本線分布情況。可以看到,海南的理科一本線最高,達(dá)到了602分,而江蘇的理科一本線最低,為353分,但各個(gè)地方的總分不同,需要做具體分析,這里就是展示一組數(shù)據(jù)而已,具體結(jié)果不具有參考性。
4.2 工程技術(shù)類錄取分?jǐn)?shù)分布圖
??接下來(lái),我們繪制三個(gè)折線圖,分別展示工程技術(shù)類的最高分、最低分和平均分的分布情況。
import pyecharts.options as opts
from pyecharts.charts import Linex_data = data['省 份'].tolist()(Line().add_xaxis(xaxis_data=x_data).add_yaxis(series_name="'理科一本線'",stack="總量",y_axis=data['理科一本線'].tolist(),label_opts=opts.LabelOpts(is_show=False),).add_yaxis(series_name="工程技術(shù)類最高分",stack="總量",y_axis=data['工程技術(shù)類最高分'].tolist(),label_opts=opts.LabelOpts(is_show=False),).add_yaxis(series_name="工程技術(shù)類最低分",stack="總量",y_axis=data['工程技術(shù)類最低分'].tolist(),label_opts=opts.LabelOpts(is_show=False),).add_yaxis(series_name="工程技術(shù)類平均分",stack="總量",y_axis=data['工程技術(shù)類平均分'].tolist(),label_opts=opts.LabelOpts(is_show=False),).set_global_opts(title_opts=opts.TitleOpts(title="工程技術(shù)類招聘分?jǐn)?shù)"),tooltip_opts=opts.TooltipOpts(trigger="axis"),yaxis_opts=opts.AxisOpts(type_="value",axistick_opts=opts.AxisTickOpts(is_show=True),splitline_opts=opts.SplitLineOpts(is_show=True),),xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=False),).render("stacked_line_chart.html")
)
??生成的折線圖展示了工程技術(shù)類在不同省份的最高分、最低分和平均分的分布情況??梢钥吹?#xff0c;工程技術(shù)類的最高分和平均分在海南最高,分別為829分和750分;而最低分在江蘇最高,為404分。
4.3 學(xué)歷教育合訓(xùn)類錄取分?jǐn)?shù)分布圖
??類似地,我們繪制三個(gè)折線圖,展示學(xué)歷教育合訓(xùn)類的最高分、最低分和平均分的分布情況。
# 數(shù)據(jù)準(zhǔn)備
scores_edu_max = [613, 600, 669, 638, 623, 641, 634, 628]
scores_edu_min = [570, 537, 640, 579, 558, 607, 599, 580]
scores_edu_avg = [592, 567, 649, 599, 597, 621, 615, 600]# 創(chuàng)建折線圖
line = Line()
line.add_xaxis(provinces)
line.add_yaxis("學(xué)歷教育合訓(xùn)類最高分", scores_edu_max)
line.add_yaxis("學(xué)歷教育合訓(xùn)類最低分", scores_edu_min)
line.add_yaxis("學(xué)歷教育合訓(xùn)類平均分", scores_edu_avg)# 設(shè)置全局配置項(xiàng)
line.set_global_opts(title_opts=opts.TitleOpts(title="學(xué)歷教育合訓(xùn)類錄取分?jǐn)?shù)分布圖"),yaxis_opts=opts.AxisOpts(name="分?jǐn)?shù)"),xaxis_opts=opts.AxisOpts(name="省份"),legend_opts=opts.LegendOpts(pos_left="left")
)# 渲染圖表
line.render("edu_scores_distribution_chart.html")
??生成的折線圖展示了學(xué)歷教育合訓(xùn)類在不同省份的最高分、最低分和平均分的分布情況。可以看到,學(xué)歷教育合訓(xùn)類的最高分在海南最高;最低分在江蘇,和上面的結(jié)果一致。
4.4 分?jǐn)?shù)結(jié)合地圖的展示
4.4.1 地圖熱力圖
??首先對(duì)省份數(shù)據(jù)進(jìn)行清洗
province_mapping = {'北京':"北京市",'天津':"天津市",'河北':"河北省",'山西':"山西省",'內(nèi)蒙古':"內(nèi)蒙古自治區(qū)",'遼寧':"遼寧省",'吉林':"吉林省",'黑龍江':"黑龍江省",'上海':"上海市",'安徽':"安徽省",...
}data['prov'] = data['省 份'].map(province_mapping)
??繪制基于地圖的省份理科一本線的詳細(xì)代碼如下:
from pyecharts import options as opts
from pyecharts.charts import Mapc = (Map().add("學(xué)歷教育合訓(xùn)類最高分", [list(z) for z in zip(data['prov'].tolist(), data['學(xué)歷教育合訓(xùn)類最高分'].tolist())], "china").set_global_opts(title_opts=opts.TitleOpts(title="國(guó)防科技大學(xué)學(xué)歷教育合訓(xùn)類最高分分布"),visualmap_opts=opts.VisualMapOpts(max_=max(data['學(xué)歷教育合訓(xùn)類最高分'].tolist()),min_=min(data['學(xué)歷教育合訓(xùn)類最高分'].tolist())),).render("map_visualmap.html")
)
4.4.2 3D地圖+3D柱狀圖工程技術(shù)類錄取最高分情況
??首先對(duì)數(shù)據(jù)進(jìn)行清洗,做成繪圖需要的數(shù)據(jù)結(jié)構(gòu),具體的數(shù)據(jù)結(jié)構(gòu)如下:
[('廣東', [113.27, 23.13, 641]),('黑龍江', [127.9688, 45.368, 667]),('內(nèi)蒙古', [110.3467, 41.4899, 641]),('吉林', [125.8154, 44.2584, 658]),('遼寧', [123.1238, 42.1216, 660]),('河北', [114.4995, 38.1006, 682]),('天津', [117.4219, 39.4189, 659]),('山西', [112.3352, 37.9413, 639]),('陜西', [109.1162, 34.2004, 665]),('甘肅', [103.5901, 36.3043, 632]),('寧夏', [106.3586, 38.1775, 637]),('青海', [101.4038, 36.8207, 596]),('新疆', [87.9236, 43.5883, 673]),('西藏', [91.11, 29.97, 0]),('四川', [103.9526, 30.7617, 665]),('重慶', [108.384366, 30.439702, 671]),('山東', [117.1582, 36.8701, 679]),('河南', [113.4668, 34.6234, 665]),('江蘇', [118.8062, 31.9208, 404]),('安徽', [117.29, 32.0581, 655]),('湖北', [114.3896, 30.6628, 665]),('浙江', [119.5313, 29.8773, 692]),('福建', [119.4543, 25.9222, 632]),('江西', [116.0046, 28.6633, 645]),('湖南', [113.0823, 28.2568, 662]),('貴州', [106.6992, 26.7682, 671]),('廣西', [108.479, 23.1152, 642]),('海南', [110.3893, 19.8516, 829]),('上海', [121.4648, 31.2891, 489])]
??以(‘廣東’, [113.27, 23.13, 641])為例,'廣東’表示省份,[113.27, 23.13]表示廣東的經(jīng)緯度,而641表示國(guó)防科技大學(xué)在廣東省工程技術(shù)類招聘的最高分為641分;
具體的繪圖代碼如下:
import pyecharts.options as opts
from pyecharts.charts import Map3D
from pyecharts.globals import ChartTypemap3d = (# 3D地圖Map3D(# 初始化配置項(xiàng)init_opts=opts.InitOpts(theme='white', # 圖表主題 white darkwidth='99vw', # 圖表畫(huà)布寬度height='97vh', # 圖標(biāo)畫(huà)布長(zhǎng)度))# !!!!全局配置項(xiàng)!!!!.set_global_opts(# 標(biāo)題配置項(xiàng)title_opts=opts.TitleOpts(title="3D地圖+柱狀圖", # 主標(biāo)題),# 視覺(jué)映射配置項(xiàng)visualmap_opts=opts.VisualMapOpts(is_show=True, # 是否顯示視覺(jué)映射配置max_=1000, # 指定 visualMapPiecewise 組件的最大值),)# !!!!系列配置項(xiàng)!!!!.set_series_opts(# 標(biāo)簽名稱顯示,默認(rèn)為Truelabel_opts=opts.LabelOpts(is_show=True # 是否顯示標(biāo)簽名字)).add_schema(# 地圖類型maptype='china',# 圖元樣式配置項(xiàng)itemstyle_opts=opts.ItemStyleOpts(# 圖形的顏色color="#1661AB",# 描邊寬度,默認(rèn)不描邊。border_width=0.8,# 圖形的描邊顏色。支持的顏色格式同 color,不支持回調(diào)函數(shù)。border_color="rgb(62,215,213)"),)# 數(shù)據(jù)配置.add(# 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選series_name='人數(shù)',# 數(shù)據(jù)項(xiàng) (坐標(biāo)點(diǎn)名稱,坐標(biāo)點(diǎn)值)data_pair=data_pair,# 疊加圖的類型(目前只支持 Bar3D,Line3D,Lines3D,Scatter3D)type_=ChartType.BAR3D,# 柱體大小bar_size=1,)
)
map3d.render("3D_Map.html")
五、結(jié)論
??通過(guò)對(duì)國(guó)防科技大學(xué)2016年的錄取分?jǐn)?shù)數(shù)據(jù)進(jìn)行可視化分析,我們可以得出以下結(jié)論:
??不同省份的高考總分不同,具體結(jié)果不具有實(shí)際意義,但并不影響數(shù)據(jù)可視化分析的流程;