ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

六维图见过么?Python 画出来了

2021-09-10 19:30:55  阅读:197  来源: 互联网

标签:六维图 title Python 出来 data dict plotly go 绘制


我们的大脑通常最多能感知三维空间,超过三维就很难想象了。尽管是三维,理解起来也很费劲,所以大多数情况下都使用二维平面。
image.png
不过,我们仍然可以绘制出多维空间,今天就来用 Python 的 plotly 库绘制下三维到六维的图,看看长什么样。

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

image.png

基础工作

安装好 plotly 包:

pip install plotly

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

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

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

绘制 2-D 图

image.png

代码实现如下:

`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 图片。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

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

绘制 3-D 图

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

image.png

代码实现如下:

`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)添加到原先的三维图中,用颜色深浅表示,这样就绘制出了四维图。可以看到当其他三个指标(马力、车身重量、车价格)越高时:车辆油耗是越少的。

image.png

绘制 5-D 图

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

image.png

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

绘制 6-D 图

接着还可以通过更改形状的方式增加第六个维度——车门数,圆形表示四车门,方形表示两车门。通常两个车门的都是昂贵的豪华跑车,在图中也可以看出方形主要集中在价格比较高的区域。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

image.png

这样我们就从普通的二维图扩展到了高维图,当然还可以继续拓展,不过分辨起来会越来越困难。

标签:六维图,title,Python,出来,data,dict,plotly,go,绘制
来源: https://blog.csdn.net/python_9988/article/details/120228401

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有