温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何用Python画六维立体图

发布时间:2022-01-12 16:33:49 阅读:392 作者:iii 栏目:大数据
Python开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

本篇内容主要讲解“如何用Python画六维立体图”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何用Python画六维立体图”吧!

我们的大脑通常最多能感知三维空间,超过三维就很难想象了。尽管是三维,理解起来也很费劲,所以大多数情况下都使用二维平面。

如何用Python画六维立体图

来自维基百科

不过,我们仍然可以绘制出多维空间,今天就来用 Python 的 plotly 库绘制下三维到六维的图,看看长什么样。

数据我们使用一份来自 UCI 的真实汽车数据集,该数据集包括 205 个样本和 26 个特征,从中选择 6 个特征来绘制图形:

如何用Python画六维立体图

 

基础工作

安装好 plotly 包:

pip install plotly
 

加载数据集(文末会提供):

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

下面我们先绘制基础的二维图表,使用两个 RPM 和 Speed 两个特征即可:

绘制 2-D 图

如何用Python画六维立体图  

代码实现如下:

import plotlyimport 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"))#绘图 htmlplotly.offline.plot({"data": [fig1],                     "layout": mylayout},                     auto_open=True)
 

保存为 html 文件打开可以生成交互界面,也可以保存为 png 图片。

下面增加特征来绘制三维图。

 

绘制 3-D 图

可以使用 plotly 的 plot.Scatter3D 方法绘制三维图:

如何用Python画六维立体图  

代码实现如下:

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-D 图

基于这样的思想,我们还可以通过修改圆形大小再增加一个维度——发动机尺寸(engine-size)变成五维图:

如何用Python画六维立体图  

我们仍然可以比较容易地地发现:车越贵,发动机尺寸越大这样的规律。

 

绘制 6-D 图

接着还可以通过更改形状的方式增加第六个维度——车门数,圆形表示四车门,方形表示两车门。通常两个车门的都是昂贵的豪华跑车,在图中也可以看出方形主要集中在价格比较高的区域。

如何用Python画六维立体图  

到此,相信大家对“如何用Python画六维立体图”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

原文链接:https://my.oschina.net/u/1755412/blog/4451915

AI

开发者交流群×