版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Python數(shù)據(jù)可視化案例教程全課導(dǎo)航項(xiàng)目1搭建數(shù)據(jù)可視化開(kāi)發(fā)平臺(tái)項(xiàng)目2
Python數(shù)據(jù)可視化基礎(chǔ)項(xiàng)目3文本型數(shù)據(jù)可視化項(xiàng)目5關(guān)聯(lián)型數(shù)據(jù)可視化項(xiàng)目4分布型數(shù)據(jù)可視化項(xiàng)目6比例型數(shù)據(jù)可視化項(xiàng)目7時(shí)間型數(shù)據(jù)可視化項(xiàng)目8文本型數(shù)據(jù)可視化項(xiàng)目9地理空間型數(shù)據(jù)可視化項(xiàng)目10點(diǎn)評(píng)網(wǎng)站美食店鋪數(shù)據(jù)可視化項(xiàng)目8
文本型數(shù)據(jù)可視化知識(shí)目標(biāo)了解文本型數(shù)據(jù)的概念及應(yīng)用場(chǎng)景。了解詞云圖、樹(shù)狀圖和關(guān)系圖的概念及應(yīng)用。了解使用pyecharts繪制詞云圖、樹(shù)狀圖和關(guān)系圖的方法。技能目標(biāo)能使用詞云圖、樹(shù)狀圖和關(guān)系圖對(duì)文本型數(shù)據(jù)進(jìn)行可視化和分析。素養(yǎng)目標(biāo)學(xué)會(huì)正視問(wèn)題,增強(qiáng)不畏困難、迎難而上的勇氣。培養(yǎng)創(chuàng)新意識(shí),提升新一代信息技術(shù)應(yīng)用能力。項(xiàng)目目標(biāo)文本型數(shù)據(jù)可視化指通過(guò)圖表呈現(xiàn)文本數(shù)據(jù)的結(jié)構(gòu)、內(nèi)容和情感等信息,幫助用戶更好地理解和分析文本數(shù)據(jù)。常見(jiàn)的文本型數(shù)據(jù)可視化場(chǎng)景有輿情分析、商品評(píng)價(jià)分析、社交網(wǎng)絡(luò)分析、知識(shí)圖譜構(gòu)建等。本項(xiàng)目將基于《“十四五”旅游業(yè)發(fā)展規(guī)劃》數(shù)據(jù)實(shí)現(xiàn)文本型數(shù)據(jù)可視化。項(xiàng)目描述按照項(xiàng)目要求,對(duì)“‘十四五’旅游業(yè)發(fā)展規(guī)劃.docx”文件中的數(shù)據(jù)進(jìn)行可視化的方法如下。(1)使用詞云圖實(shí)現(xiàn)《“
十四五”旅游業(yè)發(fā)展規(guī)劃》關(guān)鍵詞可視化。首先新建Python文件;然后編寫(xiě)代碼,實(shí)現(xiàn)從數(shù)據(jù)源中讀取數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行分詞,使用pyecharts繪制《“
十四五”旅游業(yè)發(fā)展規(guī)劃》關(guān)鍵詞詞云圖;最后在瀏覽器中查看詞云圖,并對(duì)圖表進(jìn)行分析。(2)使用樹(shù)狀圖實(shí)現(xiàn)《“
十四五”旅游業(yè)發(fā)展規(guī)劃》各級(jí)標(biāo)題可視化。首先新建Python文件;然后編寫(xiě)代碼,實(shí)現(xiàn)從數(shù)據(jù)源中讀取數(shù)據(jù),并處理數(shù)據(jù)生成具有層級(jí)結(jié)構(gòu)的數(shù)據(jù)集,使用pyecharts繪制《“
十四五”旅游業(yè)發(fā)展規(guī)劃》各級(jí)標(biāo)題樹(shù)狀圖;最后在瀏覽器中查看樹(shù)狀圖,并對(duì)圖表進(jìn)行分析。項(xiàng)目分析為了更好地實(shí)現(xiàn)《“
十四五”旅游業(yè)發(fā)展規(guī)劃》數(shù)據(jù)可視化,本項(xiàng)目將對(duì)相關(guān)知識(shí)進(jìn)行介紹,包括文本型數(shù)據(jù)的概念及應(yīng)用場(chǎng)景,詞云圖、樹(shù)狀圖和關(guān)系圖的概念及應(yīng)用,以及使用pyecharts繪制這些圖表的方法。項(xiàng)目分析全班學(xué)生以3~5人為一組,各組選出組長(zhǎng)。組長(zhǎng)組織組員掃碼觀看“常用的文本型數(shù)據(jù)分析方法”視頻,討論并回答下列問(wèn)題。問(wèn)題1:列舉常用的文本型數(shù)據(jù)分析方法。問(wèn)題2:如果想要了解文本中各個(gè)詞語(yǔ)的重要程度和使用頻率,通常使用什么分析方法?項(xiàng)目準(zhǔn)備常用的文本型數(shù)據(jù)分析方法8.1
什么是文本型數(shù)據(jù)8.2
詞云圖項(xiàng)目實(shí)施——《“十四五”旅游業(yè)發(fā)展規(guī)劃》數(shù)據(jù)可視化項(xiàng)目導(dǎo)航8.3
樹(shù)狀圖8.4
關(guān)系圖8.1
什么是文本型數(shù)據(jù)8.1什么是文本型數(shù)據(jù)文本型數(shù)據(jù)是指以文本形式存在的數(shù)據(jù)。文本型數(shù)據(jù)文檔文章報(bào)告電子郵件社交媒體帖子網(wǎng)頁(yè)內(nèi)容與數(shù)值型數(shù)據(jù)相比,文本型數(shù)據(jù)具有多樣性、主觀性、非結(jié)構(gòu)化等特點(diǎn),并且往往涉及語(yǔ)義、語(yǔ)法、上下文等,因此在處理和分析上具有一定的難度。8.1什么是文本型數(shù)據(jù)將這些分析方法與可視化技術(shù)相結(jié)合,可以將文本型數(shù)據(jù)轉(zhuǎn)化為可視化圖表,幫助用戶更好地挖掘和利用數(shù)據(jù)中的信息。常用的文本型數(shù)據(jù)分析方法詞頻分析結(jié)構(gòu)分析主題分析關(guān)系分析8.1什么是文本型數(shù)據(jù)文本型數(shù)據(jù)可視化常用的圖表詞云圖樹(shù)狀圖關(guān)系圖常見(jiàn)的文本型數(shù)據(jù)有哪些?文本型數(shù)據(jù)可視化常用的圖表有哪些?課堂檢測(cè)什么是文本型數(shù)據(jù)課堂小結(jié)8.2
詞云圖8.2詞云圖詞云圖是一種用不同的字體和顏色展示文本型數(shù)據(jù)中詞語(yǔ)的出現(xiàn)頻率和重要性的圖表。一般情況下,詞語(yǔ)的字體越大,顏色越深,則在文本數(shù)據(jù)中的出現(xiàn)頻率越高,越重要。8.2詞云圖詞云圖簡(jiǎn)潔明了、易于理解,可以幫助用戶快速了解文本數(shù)據(jù)的主題和重點(diǎn),常用于輿情分析、商品評(píng)價(jià)分析、品牌宣傳等。使用詞云圖實(shí)現(xiàn)某電商平臺(tái)某款連衣裙的商品評(píng)價(jià)可視化?!纠?-1】
本案例基于“某電商平臺(tái)某款連衣裙的商品評(píng)價(jià).txt”文件中的數(shù)據(jù),使用pyecharts的WordCloud類繪制詞云圖。首先安裝jieba庫(kù)并導(dǎo)入;然后讀取文本內(nèi)容,并使用jieba的lcut()函數(shù)對(duì)文本內(nèi)容進(jìn)行分詞;接著將排除單個(gè)字符的分詞結(jié)果添加到字典中(鍵為詞語(yǔ),值為詞語(yǔ)出現(xiàn)頻率);最后繪制詞云圖,添加數(shù)據(jù)時(shí)設(shè)置詞語(yǔ)字體大小范圍(word_size_range)和詞云圖輪廓(shape)?!締?wèn)題分析】8.2詞云圖importjieba#導(dǎo)入jieba庫(kù)#結(jié)果為[‘我們’,
‘正在’,
‘努力學(xué)習(xí)’,
‘Python’,
‘語(yǔ)言’]print(jieba.lcut(‘我們正在努力學(xué)習(xí)Python語(yǔ)言’))知識(shí)庫(kù)jieba庫(kù)是Python中一個(gè)重要的第三方中文分詞函數(shù)庫(kù),它提供了一系列分詞函數(shù),用于將文本切分成有意義的詞語(yǔ)。lcut()函數(shù)是jieba庫(kù)中的一個(gè)常用函數(shù),返回一個(gè)分詞結(jié)果列表,示例代碼如下。#導(dǎo)入pyecharts庫(kù)中的options模塊frompyechartsimportoptionsasopts#導(dǎo)入pyecharts庫(kù)中charts模塊的WordCloud類frompyecharts.chartsimportWordCloudimportjieba#導(dǎo)入jieba庫(kù)【參考代碼】使用詞云圖實(shí)現(xiàn)某電商平臺(tái)某款連衣裙的商品評(píng)價(jià)可視化。【例8-1】
8.2詞云圖#以只讀模式打開(kāi)文件并讀取文件內(nèi)容withopen(‘某電商平臺(tái)某款連衣裙的商品評(píng)價(jià).txt’,
‘r’)asfile:
text=file.read()words=jieba.lcut(text)#對(duì)文本內(nèi)容進(jìn)行分詞,將結(jié)果賦給wordsword_counts={}#定義字典,用于存儲(chǔ)詞語(yǔ)及其出現(xiàn)頻率forwordinwords:#遍歷words
iflen(word)>1:#排除分詞結(jié)果中的單個(gè)字符
#詞語(yǔ)出現(xiàn)頻率累加
word_counts[word]=word_counts.get(word,
0)+1【參考代碼】使用詞云圖實(shí)現(xiàn)某電商平臺(tái)某款連衣裙的商品評(píng)價(jià)可視化?!纠?-1】
8.2詞云圖#創(chuàng)建WordCloud類對(duì)象,并設(shè)置初始配置項(xiàng)中的網(wǎng)頁(yè)標(biāo)題wordCloud=WordCloud(init_opts=opts.InitOpts(page_title=‘詞云圖’))#添加數(shù)據(jù),并設(shè)置詞語(yǔ)字體大小范圍和詞云圖輪廓(“diamond”表示鉆石型)wordCloud.add(series_name=‘’,
data_pair=word_counts.items(),
word_size_range=[20,
60],
shape=‘diamond‘)【參考代碼】使用詞云圖實(shí)現(xiàn)某電商平臺(tái)某款連衣裙的商品評(píng)價(jià)可視化?!纠?-1】
8.2詞云圖#設(shè)置全局配置項(xiàng)wordCloud.set_global_opts(
#設(shè)置標(biāo)題配置項(xiàng),包括圖表標(biāo)題及其位置
title_opts=opts.TitleOpts(
title=‘某電商平臺(tái)某款連衣裙商品評(píng)價(jià)詞云圖’,
pos_left=‘center’),
#設(shè)置圖例配置項(xiàng),不顯示圖例
legend_opts=opts.LegendOpts(is_show=False))wordCloud.render(‘例8-1.html’)#渲染圖表【參考代碼】使用詞云圖實(shí)現(xiàn)某電商平臺(tái)某款連衣裙的商品評(píng)價(jià)可視化?!纠?-1】
8.2詞云圖【運(yùn)行結(jié)果】【結(jié)果分析】“衣服”“面料”“好看”“顯瘦”“夏天”等詞語(yǔ)比較突出,表明這些詞語(yǔ)在評(píng)價(jià)中的出現(xiàn)頻率較高,因此可以推斷出買(mǎi)家比較關(guān)注該款連衣裙的面料,并認(rèn)為該款連衣裙好看、顯瘦,適合夏天穿。使用詞云圖實(shí)現(xiàn)某電商平臺(tái)某款連衣裙的商品評(píng)價(jià)可視化?!纠?-1】
8.2詞云圖詞云圖常用于哪些方面?使用什么函數(shù)繪制詞云圖?課堂檢測(cè)詞云圖課堂小結(jié)8.3
樹(shù)狀圖8.3
樹(shù)狀圖樹(shù)狀圖由根節(jié)點(diǎn)、分支和子節(jié)點(diǎn)組成。根節(jié)點(diǎn)位于最頂部子節(jié)點(diǎn)位于根節(jié)點(diǎn)下方,可以有多個(gè)層級(jí),節(jié)點(diǎn)之間通過(guò)分支相連樹(shù)狀圖常用于展示具有層級(jí)結(jié)構(gòu)的文本型數(shù)據(jù),如組織結(jié)構(gòu)、分類體系、知識(shí)圖譜等。通過(guò)樹(shù)狀圖,用戶可以看到節(jié)點(diǎn)之間的層級(jí)關(guān)系,從而更好地理解和分析文本的結(jié)構(gòu)。8.3
樹(shù)狀圖使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
本案例基于“人工智能常見(jiàn)應(yīng)用場(chǎng)景.docx”文件中的數(shù)據(jù),使用pyecharts的Tree類繪制樹(shù)狀圖。【問(wèn)題分析】8.3
樹(shù)狀圖使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
首先安裝python-docx庫(kù);然后導(dǎo)入該庫(kù)中的Document模塊,并通過(guò)該模塊讀取docx文檔中的內(nèi)容;接著遍歷文檔中的段落,對(duì)段落的各級(jí)標(biāo)題進(jìn)行處理,生成一個(gè)具有層級(jí)結(jié)構(gòu)的字典列表,將其作為樹(shù)狀圖的數(shù)據(jù)集;最后繪制樹(shù)狀圖,添加數(shù)據(jù)時(shí)設(shè)置樹(shù)狀圖的布局方向(orient),樹(shù)狀圖離畫(huà)布頂部的距離(pos_top),以及標(biāo)簽配置項(xiàng)(LabelOpts)中文本標(biāo)簽的位置(position)、文本標(biāo)簽離圖形元素的距離(distance)和文本標(biāo)簽的字體大?。╢ont_size)。8.3
樹(shù)狀圖【問(wèn)題分析】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖【問(wèn)題分析】具有層級(jí)結(jié)構(gòu)的字典列表中,每個(gè)字典為一個(gè)父節(jié)點(diǎn),包括name和children關(guān)鍵字。children的值也為字典列表,其中的每個(gè)字典為一個(gè)子節(jié)點(diǎn),只有一個(gè)name關(guān)鍵字,具體結(jié)構(gòu)如下。[
{
‘name’:‘父節(jié)點(diǎn)’,
‘children’:[
{‘name’:‘子節(jié)點(diǎn)1’},
{‘name’:‘子節(jié)點(diǎn)2’},
{‘name’:‘子節(jié)點(diǎn)3’},
…
]
},
…]提示安裝python-docx庫(kù)時(shí),使用“python-docx”名稱,但導(dǎo)入庫(kù)時(shí)使用“docx”名稱。使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖#coding:UTF-8#聲明文件的編碼方式為UTF-8#導(dǎo)入pyecharts庫(kù)中的options模塊frompyechartsimportoptionsasopts#導(dǎo)入pyecharts庫(kù)中charts模塊的Tree類frompyecharts.chartsimportTree#導(dǎo)入pyecharts庫(kù)中g(shù)lobals模塊的ThemeType全局變量frompyecharts.globalsimportThemeTypefromdocximportDocument#導(dǎo)入docx庫(kù)中的Document模塊【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖doc=Document(‘人工智能常見(jiàn)應(yīng)用場(chǎng)景.docx’)#打開(kāi)docx文檔data=[]#定義列表,用于存儲(chǔ)作為父節(jié)點(diǎn)的字典title2=[]#定義列表,用于存儲(chǔ)二級(jí)標(biāo)題title2_num,
title2_temp=0,
0#定義整型變量,用于存儲(chǔ)二級(jí)標(biāo)題序號(hào)【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化。【例8-2】
8.3
樹(shù)狀圖#遍歷文檔中的段落,對(duì)段落的各級(jí)標(biāo)題進(jìn)行處理,生成具有層級(jí)結(jié)構(gòu)的字典列表forparaindoc.paragraphs:
level=#獲取段落的標(biāo)題級(jí)別
iflevel==‘Heading1’:#處理一級(jí)標(biāo)題
dict={}#定義字典
dict[‘name’]=para.text#將段落文本賦給dict的name關(guān)鍵字
data.append(dict)#將dict添加到data中【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖
eliflevel==‘Heading2’:#處理二級(jí)標(biāo)題
title2_num=title2_num+1
dict={}#定義字典
#使用“.”分割段落文本,并將第一個(gè)元素賦給dict的name關(guān)鍵字
dict[‘name’]=para.text.split(‘.’)[1]
title2.append(dict)#將dict添加到title2中
#將title2賦給data中第一層級(jí)的children關(guān)鍵字
data[0][‘children’]=title2【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化。【例8-2】
8.3
樹(shù)狀圖eliflevel==‘Heading3’:#處理三級(jí)標(biāo)題
iftitle2_temp!=title2_num:#如果兩次的二級(jí)標(biāo)題序號(hào)不一致
title2_temp=title2_num
title3=[]#定義列表,用于存儲(chǔ)三級(jí)標(biāo)題
dict={}#定義字典
#使用空格分割段落文本,并將第一個(gè)元素賦給dict的name關(guān)鍵字
dict[‘name’]=para.text.split()[1]
title3.append(dict)#將dict添加到title3中
#將title3賦給data中相應(yīng)層級(jí)的children關(guān)鍵字
data[0][‘children’][title2_num-1][‘children’]=title3【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖#創(chuàng)建Tree類對(duì)象,并設(shè)置初始配置項(xiàng),包括畫(huà)布大小、圖表主題和網(wǎng)頁(yè)標(biāo)題tree=Tree(init_opts=opts.InitOpts(
width=‘800px’,
height=‘900px’,
theme=ThemeType.LIGHT,
page_title=‘樹(shù)狀圖’))【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化。【例8-2】
8.3
樹(shù)狀圖#添加數(shù)據(jù),并設(shè)置樹(shù)狀圖的布局方向、位置,以及標(biāo)簽配置項(xiàng)tree.add(series_name=‘’,data=data,
orient=‘LR’,#樹(shù)狀圖布局方向?yàn)閺淖蟮接?/p>
pos_top=‘5%’,#樹(shù)狀圖離畫(huà)布頂部的距離
label_opts=opts.LabelOpts(
position=‘top’,#文本標(biāo)簽的位置
distance=0,#文本標(biāo)簽離圖形元素的距離
font_size=‘15’,#文本標(biāo)簽的字體大小
))【參考代碼】使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖#設(shè)置全局配置項(xiàng)tree.set_global_opts(
#設(shè)置標(biāo)題配置項(xiàng),包括圖表標(biāo)題及其位置
title_opts=opts.TitleOpts(
title=‘人工智能常見(jiàn)應(yīng)用場(chǎng)景樹(shù)狀圖’,pos_left=‘center’,
#設(shè)置圖例配置項(xiàng),不顯示圖例
legend_opts=opts.LegendOpts(is_show=False))tree.render(‘例8-2.html’)#渲染圖表【參考代碼】提示Python默認(rèn)使用UTF-8編碼來(lái)解析代碼文件,但是如果文件中存在非UTF-8編碼的字符,就會(huì)出現(xiàn)編碼錯(cuò)誤。為解決此問(wèn)題,需要在代碼文件的開(kāi)頭添加注釋“#coding:UTF-8”來(lái)聲明文件的編碼方式為UTF-8。【運(yùn)行結(jié)果】【結(jié)果分析】該樹(shù)狀圖清晰地展示了人工智能在安防、教育、醫(yī)療、交通和零售等場(chǎng)景的應(yīng)用。使用樹(shù)狀圖實(shí)現(xiàn)人工智能常見(jiàn)應(yīng)用場(chǎng)景可視化?!纠?-2】
8.3
樹(shù)狀圖樹(shù)狀圖由哪幾部分組成?簡(jiǎn)述繪制樹(shù)狀圖的步驟。課堂檢測(cè)樹(shù)狀圖課堂小結(jié)8.4
關(guān)系圖8.4關(guān)系圖關(guān)系圖是一種用于展示節(jié)點(diǎn)之間關(guān)系的圖表,它由節(jié)點(diǎn)和邊組成,節(jié)點(diǎn)表示實(shí)體或?qū)ο?,邊表示?jié)點(diǎn)之間的關(guān)系。8.4關(guān)系圖有向圖關(guān)系圖無(wú)向圖關(guān)系具有方向性關(guān)系沒(méi)有方向性8.4關(guān)系圖關(guān)系圖可以幫助用戶理解和分析數(shù)據(jù)中的復(fù)雜關(guān)系,發(fā)現(xiàn)其中隱藏的模式和規(guī)律,從而預(yù)測(cè)趨勢(shì)、輔助決策等。關(guān)系圖廣泛應(yīng)用于各個(gè)領(lǐng)域人物關(guān)系網(wǎng)絡(luò)社交網(wǎng)絡(luò)交通網(wǎng)絡(luò)供應(yīng)鏈網(wǎng)絡(luò)使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
本案例使用pyecharts的Graph類繪制關(guān)系圖。首先定義節(jié)點(diǎn)數(shù)據(jù)項(xiàng)列表(每個(gè)節(jié)點(diǎn)數(shù)據(jù)項(xiàng)為一個(gè)字典,包括節(jié)點(diǎn)名稱和所屬類目名稱鍵值對(duì))、關(guān)系數(shù)據(jù)項(xiàng)列表(每個(gè)關(guān)系數(shù)據(jù)項(xiàng)為一個(gè)字典,包括源節(jié)點(diǎn)名稱、目標(biāo)節(jié)點(diǎn)名稱和節(jié)點(diǎn)間關(guān)系鍵值對(duì))和節(jié)點(diǎn)分類的類目列表(每個(gè)類目為一個(gè)字典,包括類目名稱和該類目節(jié)點(diǎn)大小鍵值對(duì));然后繪制關(guān)系圖,添加數(shù)據(jù)時(shí)設(shè)置節(jié)點(diǎn)間的斥力因子(repulsion)、節(jié)點(diǎn)間邊的標(biāo)簽配置(edge_label)中文本標(biāo)簽的位置和顯示格式(通過(guò)標(biāo)簽配置項(xiàng)設(shè)置)?!締?wèn)題分析】8.4關(guān)系圖提示繪制關(guān)系圖時(shí),節(jié)點(diǎn)間的斥力因子越大,節(jié)點(diǎn)間的距離越遠(yuǎn);節(jié)點(diǎn)間的斥力因子越小,節(jié)點(diǎn)間的距離越近。#導(dǎo)入pyecharts庫(kù)中的options模塊frompyechartsimportoptionsasopts#導(dǎo)入pyecharts庫(kù)中charts模塊的Graph類frompyecharts.chartsimportGraph【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化。【例8-3】
8.4關(guān)系圖#定義節(jié)點(diǎn)數(shù)據(jù)項(xiàng)列表,每個(gè)節(jié)點(diǎn)數(shù)據(jù)項(xiàng)為一個(gè)字典,包括節(jié)點(diǎn)名稱和所屬類目名稱鍵值對(duì)list_nodes=[
{‘name’:‘賈母’,
‘category’:‘第一代’},
{‘name’:‘賈赦’,
‘category’:‘第二代’},
{‘name’:‘賈政’,
‘category’:‘第二代’},【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖
{‘name’:‘王夫人’、
‘category’:‘第二代’},
{‘name’:‘邢夫人’、
‘category’:‘第二代’},
{‘name’:‘賈寶玉’、
‘category’:‘第三代’},
{‘name’:‘林黛玉’、
‘category’:‘第三代’},
{‘name’:‘薛寶釵’、
‘category’:‘第三代’}]【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化。【例8-3】
8.4關(guān)系圖#定義關(guān)系數(shù)據(jù)項(xiàng)列表,每個(gè)關(guān)系數(shù)據(jù)項(xiàng)為一個(gè)字典,包括源節(jié)點(diǎn)名稱、目標(biāo)節(jié)點(diǎn)名稱和節(jié)點(diǎn)間關(guān)系鍵值對(duì)list_links=[
{‘source’:‘賈母’,
‘target’:‘賈赦’,
‘value’:‘母子’},
{‘source’:‘賈母’,
‘target’:‘賈政’,
‘value’:‘母子’},
{‘source’:‘賈母’,
‘target’:‘賈寶玉’,
‘value’:‘祖孫’},
{‘source’:‘賈母’,
‘target’:‘林黛玉’,
‘value’:‘外祖孫’},
{‘source’:‘賈政’,
‘target’:‘王夫人’,
‘value’:‘夫妻’},【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖{‘source’:‘賈赦’,
‘target’:‘邢夫人’,
‘value’:‘夫妻’},
{‘source’:‘賈赦’,
‘target’:‘賈政’,
‘value’:‘兄弟’},
{‘source’:‘賈政’,
‘target’:‘賈寶玉’,
‘value’:‘父子’},
{‘source’:‘賈政’,
‘target’:‘林黛玉’,
‘value’:‘舅甥’},
{‘source’:‘賈赦’,
‘target’:‘林黛玉’,
‘value’:‘舅甥’},【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖
{‘source’:‘王夫人’,
‘target’:‘薛寶釵’,
‘value’:‘姨甥’},
{‘source’:‘邢夫人’,
‘target’:‘王夫人’,
‘value’:‘妯娌’},
{‘source’:‘王夫人’,
‘target’:‘賈寶玉’,
‘value’:‘母子’},
{‘source’:‘賈寶玉’,
‘target’:‘林黛玉’,
‘value’:‘表兄妹’},
{‘source’:‘薛寶釵’,
‘target’:‘賈寶玉’,
‘value’:‘表姐弟’},]【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖#定義節(jié)點(diǎn)分類的類目列表,每個(gè)類目為一個(gè)字典,包括類目名稱和該類目節(jié)點(diǎn)大小鍵值對(duì)list_categorys=[
{‘name’:‘第一代’,
‘symbolSize’:50},
{‘name’:‘第二代’,
‘symbolSize’:40},
{‘name’:‘第三代’,
‘symbolSize’:30}]【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖#創(chuàng)建Graph類對(duì)象,并設(shè)置初始配置項(xiàng),包括畫(huà)布大小和網(wǎng)頁(yè)標(biāo)題graph=Graph(init_opts=opts.InitOpts(
width=‘750px’,
height=‘700px’,
page_title=‘關(guān)系圖’))#添加數(shù)據(jù),并設(shè)置節(jié)點(diǎn)間的斥力因子、節(jié)點(diǎn)間邊的標(biāo)簽配置中文本標(biāo)簽的位置和顯示格式graph.add(series_name=‘’,nodes=list_nodes,links=list_links,
categories=list_categorys,repulsion=8000,
edge_label=opts.LabelOpts(
position=‘middle’,
formatter=‘{c}’))【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖#設(shè)置全局配置項(xiàng)graph.set_global_opts(
#設(shè)置標(biāo)題配置項(xiàng),包括圖表標(biāo)題及其位置
title_opts=opts.TitleOpts(
title=‘《紅樓夢(mèng)》中部分人物關(guān)系圖’,
pos_left=‘center’),
#設(shè)置圖例配置項(xiàng),包括圖例位置和布局方向
legend_opts=opts.LegendOpts(
pos_top=‘50%’,
pos_right=‘1%’,
orient=‘vertical’))graph.render(‘例8-3.html’)#渲染圖表【參考代碼】使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖【運(yùn)行結(jié)果】【結(jié)果分析】該關(guān)系圖清晰地展示了《紅樓夢(mèng)》中部分人物之間的關(guān)系,并指明了人物關(guān)系的方向。使用關(guān)系圖實(shí)現(xiàn)《紅樓夢(mèng)》中部分人物關(guān)系可視化?!纠?-3】
8.4關(guān)系圖將鼠標(biāo)指針移到“賈母”節(jié)點(diǎn)上,關(guān)系圖只高亮顯示與賈母相關(guān)的關(guān)系關(guān)系圖廣
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大學(xué)分子生物學(xué)(基因表達(dá)調(diào)控)試題及答案
- 2025年大學(xué)本科(工商管理)企業(yè)管理案例分析階段測(cè)試題及答案
- 2025年高職城市軌道交通通信信號(hào)技術(shù)(城市軌道交通信號(hào)系統(tǒng))試題及答案
- 2025年高職化工儀表技術(shù)(化工儀表校準(zhǔn))試題及答案
- 2025年中職人工智能技術(shù)應(yīng)用(AI技術(shù)基礎(chǔ)原理)試題及答案
- 2025年大學(xué)大四(林產(chǎn)化工)林產(chǎn)精細(xì)化學(xué)品工藝學(xué)階段測(cè)試試題及答案
- 2025年高職(工商企業(yè)管理)企業(yè)管理試題及答案
- 2025年大學(xué)舞蹈學(xué)(舞蹈教育心理學(xué))試題及答案
- 2025年高職(助產(chǎn))婦科護(hù)理綜合測(cè)試題及答案
- 2025年高職(建設(shè)工程監(jiān)理)建設(shè)工程合同管理試題及答案
- 2026年消防設(shè)施操作員之消防設(shè)備基礎(chǔ)知識(shí)考試題庫(kù)500道及完整答案(各地真題)
- 2026年電信運(yùn)營(yíng)商物資管理崗位面試題
- 2025年高職會(huì)計(jì)(成本核算)試題及答案
- 蟲(chóng)鼠害培訓(xùn)課件
- 2025學(xué)年上海市七年級(jí)語(yǔ)文上冊(cè)作文題目匯編及解析
- 2026年河南經(jīng)貿(mào)職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)及參考答案詳解
- 欄桿安裝施工方案示例
- JJF 2333-2025 恒溫金屬浴校準(zhǔn)規(guī)范
- 2025年水工金屬結(jié)構(gòu)行業(yè)分析報(bào)告及未來(lái)發(fā)展趨勢(shì)預(yù)測(cè)
- 軟件產(chǎn)品項(xiàng)目管理方案
- 2024年勤學(xué)之星個(gè)人事跡材料簡(jiǎn)介
評(píng)論
0/150
提交評(píng)論