項(xiàng)目8 文本型數(shù)據(jù)可視化_第1頁(yè)
項(xiàng)目8 文本型數(shù)據(jù)可視化_第2頁(yè)
項(xiàng)目8 文本型數(shù)據(jù)可視化_第3頁(yè)
項(xiàng)目8 文本型數(shù)據(jù)可視化_第4頁(yè)
項(xiàng)目8 文本型數(shù)據(jù)可視化_第5頁(yè)
已閱讀5頁(yè),還剩69頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論