Python繪制散點(diǎn)圖之可視化神器pyecharts
散點(diǎn)圖
什么是散點(diǎn)圖?
散點(diǎn)圖是指在數(shù)理統(tǒng)計(jì)回歸分析中,數(shù)據(jù)點(diǎn)在直角坐標(biāo)系平面上的分布圖, 散點(diǎn)圖??表示因變量隨自變量而變化的大致趨勢(shì),由此趨勢(shì)可以選擇合適的函數(shù)進(jìn)行經(jīng)驗(yàn)分布的擬合,進(jìn)而找到變量之間的函數(shù)關(guān)系。
散點(diǎn)圖有什么用處?
- 1、數(shù)據(jù)用圖表來(lái)展示,顯然比較直觀,在工作匯報(bào)等場(chǎng)合能起到事半功倍的效果,讓聽(tīng)者更容易接受,理解你所處理的數(shù)據(jù)。
- 2、散點(diǎn)圖更偏向于研究型圖表,能讓我們發(fā)現(xiàn)變量之間隱藏的關(guān)系為我們決策作出重要的引導(dǎo)作用。
- 3、散點(diǎn)圖核心的價(jià)值在于發(fā)現(xiàn)變量之間的關(guān)系,千萬(wàn)不要簡(jiǎn)單地將這個(gè)關(guān)系理解為線(xiàn)性回歸關(guān)系。變量間的關(guān)系有很多,如線(xiàn)性關(guān)系、指數(shù)關(guān)系、對(duì)數(shù)關(guān)系等等,當(dāng)然,沒(méi)有關(guān)系也是一種重要的關(guān)系。
- 4、散點(diǎn)圖經(jīng)過(guò)回歸分析之后,可以對(duì)相關(guān)對(duì)象進(jìn)行預(yù)測(cè)分析,進(jìn)而做出科學(xué)的決策,而不是模棱兩可。比如說(shuō):醫(yī)學(xué)里的白細(xì)胞散點(diǎn)圖可以在醫(yī)學(xué)檢測(cè)方面為我們健康提供精確的分析,為醫(yī)生后續(xù)的判斷做出重要的技術(shù)支持。
散點(diǎn)圖的基本構(gòu)成要素
散點(diǎn)圖主要的構(gòu)成元素有:數(shù)據(jù)源,橫縱坐標(biāo)軸,變量名,研究的對(duì)象。而基本的要素就是點(diǎn),也就是我們統(tǒng)計(jì)的數(shù)據(jù),由這些點(diǎn)的分布我們才能觀察出變量之間的關(guān)系。
而散點(diǎn)圖一般研究的是兩個(gè)變量之間的關(guān)系,往往滿(mǎn)足不了我們?nèi)粘5男枨?。因此,氣泡圖的誕生就是為散點(diǎn)圖增加變量,提供更加豐富的信息,點(diǎn)的大小或者顏色可以定義為第三個(gè)變量,因?yàn)椋龀鰜?lái)的散點(diǎn)圖類(lèi)似氣泡,也由此得名為氣泡圖。
散點(diǎn)圖模板系列
簡(jiǎn)單散點(diǎn)圖
數(shù)據(jù)越多散點(diǎn)圖呈現(xiàn)的效果就越明顯。這也就是我們平時(shí)在進(jìn)行建模的時(shí)候,采用回歸擬合的原則,如果數(shù)據(jù)是遵循某種函數(shù)關(guān)系,我們可以通過(guò)機(jī)器進(jìn)行訓(xùn)練,不斷的迭代達(dá)到最優(yōu)效果。
import pyecharts.options as opts from pyecharts.charts import Scatter data = [ [10.0, 8.04], [8.0, 6.95], [13.0, 7.58], [9.0, 8.81], [11.0, 8.33], [14.0, 9.96], [6.0, 7.24], [4.0, 4.26], [12.0, 10.84], [7.0, 4.82], [5.0, 5.68], ] data.sort(key=lambda x: x[0]) x_data = [d[0] for d in data] y_data = [d[1] for d in data] ( Scatter(init_opts=opts.InitOpts(width="1200px", height="600px")) .add_xaxis(xaxis_data=x_data) .add_yaxis( series_name="", y_axis=y_data, symbol_size=20, label_opts=opts.LabelOpts(is_show=False), ) .set_series_opts() .set_global_opts( xaxis_opts=opts.AxisOpts( type_="value", splitline_opts=opts.SplitLineOpts(is_show=True) ), yaxis_opts=opts.AxisOpts( type_="value", axistick_opts=opts.AxisTickOpts(is_show=True), splitline_opts=opts.SplitLineOpts(is_show=True), ), tooltip_opts=opts.TooltipOpts(is_show=False), ) .render("簡(jiǎn)單散點(diǎn)圖.html") )
多維數(shù)據(jù)散點(diǎn)圖
我們?cè)谄綍r(shí)的運(yùn)用場(chǎng)景中,發(fā)現(xiàn)散點(diǎn)圖太多呈現(xiàn)的效果圖太密集了,我們只需要知道某一個(gè)區(qū)域它分布的數(shù)量,本來(lái)柱狀圖可以解決,但是這個(gè)散點(diǎn)圖一個(gè)更好,可以反映區(qū)域的分布,主要可以看見(jiàn)它的數(shù)量趨勢(shì)變化,根據(jù)自己的業(yè)務(wù)需求來(lái)使用吧。
from pyecharts import options as opts from pyecharts.charts import Scatter from pyecharts.commons.utils import JsCode from pyecharts.faker import Faker c = ( Scatter() .add_xaxis(Faker.choose()) .add_yaxis( "類(lèi)別1", [list(z) for z in zip(Faker.values(), Faker.choose())], label_opts=opts.LabelOpts( formatter=JsCode( "function(params){return params.value[1] +' : '+ params.value[2];}" ) ), ) .set_global_opts( title_opts=opts.TitleOpts(title="多維度數(shù)據(jù)"), tooltip_opts=opts.TooltipOpts( formatter=JsCode( "function (params) {return params.name + ' : ' + params.value[2];}" ) ), visualmap_opts=opts.VisualMapOpts( type_="color", max_=150, min_=20, dimension=1 ), ) .render("多維數(shù)據(jù)散點(diǎn)圖.html") ) print([list(z) for z in zip(Faker.values(), Faker.choose())])
散點(diǎn)圖顯示分割線(xiàn)
顯示分割線(xiàn),其實(shí)和之前的沒(méi)有異樣。
from pyecharts import options as opts from pyecharts.charts import Scatter from pyecharts.faker import Faker c = ( Scatter() .add_xaxis(Faker.choose()) .add_yaxis("A", Faker.values()) .set_global_opts( title_opts=opts.TitleOpts(title="標(biāo)題"), xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)), yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)), ) .render("分割線(xiàn).html") )
散點(diǎn)圖凸出大?。ǘS)
用二維的數(shù)據(jù)來(lái)展示每個(gè)類(lèi)別的分布狀況,圖表可顯示多個(gè)類(lèi)別,這樣極大的增強(qiáng)了我們解釋的效果。
from pyecharts import options as opts from pyecharts.charts import Scatter from pyecharts.faker import Faker c = ( Scatter() .add_xaxis(Faker.choose()) .add_yaxis("1", Faker.values()) .add_yaxis("2", Faker.values()) .set_global_opts( title_opts=opts.TitleOpts(title="標(biāo)題"), visualmap_opts=opts.VisualMapOpts(type_="size", max_=150, min_=20), ) .render("凸出大小散點(diǎn)圖.html") )
3D散點(diǎn)圖展示
動(dòng)態(tài)漣漪散點(diǎn)圖
之前的散點(diǎn)都是靜態(tài)的,下面我們來(lái)看看動(dòng)態(tài)的散點(diǎn)圖;
from pyecharts import options as opts from pyecharts.charts import EffectScatter from pyecharts.faker import Faker c = ( EffectScatter() .add_xaxis(Faker.choose()) .add_yaxis("", Faker.values()) .set_global_opts(title_opts=opts.TitleOpts(title="散點(diǎn)圖")) .render("動(dòng)態(tài)散點(diǎn)圖.html") )
箭頭標(biāo)志散點(diǎn)圖
from pyecharts import options as opts from pyecharts.charts import EffectScatter from pyecharts.faker import Faker from pyecharts.globals import SymbolType c = ( EffectScatter() .add_xaxis(Faker.choose()) .add_yaxis("", Faker.values(), symbol=SymbolType.ARROW) .set_global_opts(title_opts=opts.TitleOpts(title="標(biāo)題")) .render("箭頭動(dòng)態(tài)散點(diǎn)圖.html") )
到此這篇關(guān)于Python繪制散點(diǎn)圖之可視化神器pyecharts的文章就介紹到這了,更多相關(guān)Python繪制散點(diǎn)圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)尋找回文數(shù)字過(guò)程解析
這篇文章主要介紹了Python實(shí)現(xiàn)尋找回文數(shù)字過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06python人工智能tensorflow構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)CNN
學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)已經(jīng)有一段時(shí)間,從普通的BP神經(jīng)網(wǎng)絡(luò)到LSTM長(zhǎng)短期記憶網(wǎng)絡(luò)都有一定的了解,但是從未系統(tǒng)的把整個(gè)神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)記錄下來(lái),我相信這些小記錄可以幫助我更加深刻的理解神經(jīng)網(wǎng)絡(luò)2022-05-05pytest進(jìn)階教程之fixture函數(shù)詳解
這篇文章主要給大家介紹了關(guān)于pytest進(jìn)階教程之fixture函數(shù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03python+Tkinter+多線(xiàn)程的實(shí)例
這篇文章主要介紹了python+Tkinter+多線(xiàn)程的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05Python 實(shí)現(xiàn)輸入任意多個(gè)數(shù),并計(jì)算其平均值的例子
今天小編就為大家分享一篇Python 實(shí)現(xiàn)輸入任意多個(gè)數(shù),并計(jì)算其平均值的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07python+pytest自動(dòng)化測(cè)試函數(shù)測(cè)試類(lèi)測(cè)試方法的封裝
這篇文章主要介紹了python+pytest自動(dòng)化測(cè)試函數(shù)測(cè)試類(lèi)測(cè)試方法的封裝,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06