亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python 畫出來六維圖

系統 2423 0

Python 畫出來六維圖_第1張圖片

來自維基百科

我們的大腦通常最多能感知三維空間,超過三維就很難想象了。盡管是三維,理解起來也很費勁,所以大多數情況下都使用二維平面。

不過,我們仍然可以繪制出多維空間,今天就來用 Python 的 plotly 庫繪制下三維到六維的圖,看看長什么樣。

數據我們使用一份來自 UCI 的真實汽車數據集,該數據集包括 205 個樣本和 26 個特征,從中選擇 6 個特征來繪制圖形:

Python 畫出來六維圖_第2張圖片

基礎工作

安裝好 plotly 包:

            
pip install plotly
          

加載數據集(文末會提供):

            
import pandas as pd 
data = pd.read_csv("cars.csv")
          

下面我們先繪制基礎的二維圖表,使用兩個 RPM 和 Speed 兩個特征即可:

繪制 2-D 圖

Python 畫出來六維圖_第3張圖片

代碼實現如下:

            
import plotly 
import plotly.graph_objs as go 
 
#繪制散點圖 
fig1 = go.Scatter(x=data['curb-weight'], 
         y=data['price'], 
         mode='markers') 
 
#繪制布局 
mylayout = go.Layout(xaxis=dict(title="curb-weight"), 
           yaxis=dict( title="price")) 
 
#繪圖 html 
plotly.offline.plot({"data": [fig1], 
           "layout": mylayout}, 
           auto_open=True)

          

保存為 html 文件打開可以生成交互界面,也可以保存為 png 圖片。

下面增加特征來繪制三維圖。

繪制 3-D 圖

可以使用 plotly 的 plot.Scatter3D 方法繪制三維圖:

Python 畫出來六維圖_第4張圖片

代碼實現如下:

            
fig1 = go.Scatter3d(x=data['curb-weight'], 
          y=data['horsepower'], 
          z=data['price'], 
          marker=dict(opacity=0.9, 
                reversescale=True, 
                colorscale='Blues', 
                size=5), 
          line=dict (width=0.02), 
          mode='markers') 
 
mylayout = go.Layout(scene=dict(xaxis=dict( title="curb-weight"), 
                yaxis=dict( title="horsepower"), 
                zaxis=dict(title="price")),) 
 
plotly.offline.plot({"data": [fig1], 
           "layout": mylayout}, 
           auto_open=True, 
           filename=("3DPlot.html"))

          

如何繪制更高維度的圖呢?顯然無法通過擴展坐標軸的形式,不過有個小技巧就是制造一個虛擬維度,可以用不同顏色、形狀大小、形狀類別來入手。這樣就可以顯示第四個維度了。

繪制 4-D 圖

下面我們將第四個變量――車輛油耗(city-mpg)添加到原先的三維圖中,用顏色深淺表示,這樣就繪制出了四維圖。可以看到當其他三個指標(馬力、車身重量、車價格)越高時:車輛油耗是越少的。

Python 畫出來六維圖_第5張圖片

繪制 5-D 圖

基于這樣的思想,我們還可以通過修改圓形大小再增加一個維度――發動機尺寸(engine-size)變成五維圖:

Python 畫出來六維圖_第6張圖片

我們仍然可以比較容易地地發現:車越貴,發動機尺寸越大這樣的規律。

繪制 6-D 圖

接著還可以通過更改形狀的方式增加第六個維度――車門數,圓形表示四車門,方形表示兩車門。通常兩個車門的都是昂貴的豪華跑車,在圖中也可以看出方形主要集中在價格比較高的區域。

Python 畫出來六維圖_第7張圖片

這樣我們就從普通的二維圖擴展到了高維圖,當然還可以繼續拓展,不過分辨起來會越來越困難。

源碼下載地址

原文鏈接:

https://medium.com/@prasadostwal/multi-dimension-plots-in-python-from-2d-to-6d-9a2bf7b8cc74

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 香蕉视频伊人 | 中文字幕日韩视频 | 国产综合精品 | 日本最新免费二区三区 | 国产欧美久久久精品 | 一区二区三区欧美在线 | 欧美亚洲国产精品久久久久 | 国产精品高清久久久久久久 | 狠狠色伊人亚洲综合成人 | 国产欧美综合一区二区 | 中文字幕一区二区三区有限公司 | 日韩精品你懂的在线播放 | 亚洲欧洲国产成人精品 | 四虎影音在线观看 | 日韩欧美中文 | 国产视频福利 | 亚洲我射 | 久久久久久国产精品免费免费 | 久久综合草 | 中文字幕在线观看一区 | 老湿机午夜影院 | 亚洲一级视频在线观看 | 亚洲欧美自拍另类图片色 | 国产伦精品一区二区三区女 | 国产亚洲精品一品区99热 | 黄色wwwww| 四虎影院永久免费观看 | 深夜在线视频 | 成人国内精品久久久久影 | 国产精品久久国产三级国电话系列 | 黄色网毛片 | 午夜精品久久久久久99热 | 在线观看高清国产福利视频 | 99热久久精里都是精品66 | 欧美在线观看视频网站 | 一久久| 久久天天躁狠狠躁夜夜不卡 | 九天玄帝诀王凡小说免费阅读 | 狠狠舔 | 国产精品视频色拍拍 | 国产午夜久久精品 |