当前位置:首页 >热点 >添加数据维度,使用Python绘制5D散点图

添加数据维度,使用Python绘制5D散点图

2024-06-30 21:37:40 [百科] 来源:避面尹邢网

添加数据维度,添加使用Python绘制5D散点图

作者:学研君 开发 前端 散点图通常用于比较2个不同特征以确定它们之间的数据使用D散关系。散点图也可以添加更多的维度维度来反映数据,例如使用颜色、绘制气泡大小等。点图在本文中,添加将介绍如何绘制一个五维的数据使用D散散点图。

散点图通常用于比较2个不同特征以确定它们之间的维度关系。散点图也可以添加更多的绘制维度来反映数据,例如使用颜色、点图气泡大小等。添加在本文中,数据使用D散将介绍如何绘制一个五维的维度散点图。

数据集:https://github.com/checkming00/Medium_datasets/blob/main/WH%20Report_preprocessed.csv

添加数据维度,使用Python绘制5D散点图

图片

添加数据维度,使用Python绘制5D散点图

图片

添加数据维度,使用Python绘制5D散点图

让我们从二维开始,绘制简单地看一下Healthy_life_expectancy_at_birth和Log_GDP_per_capita的点图图:

df.plot.scatter('Healthy_life_expectancy_at_birth', 'Log_GDP_per_capita')

图片

我们可以看到这2个特征具有很强的正相关关系。然后我们可以将year作为我们的三维视觉效果添加到绘图中:

import matplotlib.pyplot as pltimport numpy as npplt.figure(figsize=(15, 8))years = np.sort(df.year.unique())for i, year in enumerate(years):    BM = df.year == year    X = df[BM]['Healthy_life_expectancy_at_birth']    Y = df[BM]['Log_GDP_per_capita']    plt.subplot(2, 5, i+1) # 2X5 structure of subplots, at i+1 position    plt.scatter(X, Y)    plt.title(year)    plt.xlim([30, 80]) # x axis range    plt.ylim([6, 12]) # y axis rangeplt.show()plt.tight_layout()

图片

它显示了多年来Healthy_life_expectancy_at_birth和Log_GDP_per_capita之间的关系。

另一方面,我们可以让它具有交互性:

def plotyear(year):    BM = df.year == year    X = df[BM]['Healthy_life_expectancy_at_birth']    Y = df[BM]['Log_GDP_per_capita']    plt.scatter(X, Y)    plt.xlabel('Healthy_life_expectancy_at_birth')    plt.ylabel('Log_GDP_per_capita')    plt.xlim([30, 80])    plt.ylim([6, 12])    plt.show()
from ipywidgets import interact, widgetsmin_year=df.year.min()max_year=df.year.max()interact(plotyear,          year=widgets.IntSlider(min=min_year,                                 max=max_year, step=1, value=min_year))

图片

然后我们可以拖动顶部的控制条来更改年份。

现在让我们把第四个维度Continent作为图例放入:

continents = df.Continent.unique()con_colors = dict(zip(continents, ['b', 'g', 'r', 'c', 'm', 'y' ,'k']))
import seaborn as snsdef plotyear_continent(year):    BM = df.year == year    sns.scatterplot(data=df[BM], x='Healthy_life_expectancy_at_birth',                     y='Log_GDP_per_capita', hue='Continent', palette=con_colors)    plt.xlabel('Healthy_life_expectancy_at_birth')    plt.ylabel('Log_GDP_per_capita')    plt.xlim([30, 80])    plt.ylim([6, 12])    plt.legend()    plt.show()
interact(plotyear_continent,          year=widgets.IntSlider(min=min_year,                                 max=max_year, step=1,                                 value=round(df.year.mean(),0)))

图片

它显示了不同大洲之间的关系。此时,将默认年份设置为2014年(value=round(df.year.mean(),0))。

我们可以在视觉上做得更多的是气泡的大小。所以我们可以把population作为第五维:

continents = df.Continent.unique()con_colors = dict(zip(continents, ['b', 'g', 'r', 'c', 'm', 'y' ,'k']))min_size=df['population'].min()/1000000  # Scale bubble minimum sizemax_size=df['population'].max()/1000000  # Scale bubble maximum sizedef plotyear_continent_pop(year):    BM = df.year == year    sns.scatterplot(data=df[BM], x='Healthy_life_expectancy_at_birth',                     y='Log_GDP_per_capita', hue='Continent',                     palette=con_colors, size='population',                     sizes=(min_size, max_size))    plt.xlabel('Healthy_life_expectancy_at_birth')    plt.ylabel('Log_GDP_per_capita')    plt.xlim([30, 80])    plt.ylim([6, 12])    plt.legend()    plt.show()
interact(plotyear_continent_pop,          year=widgets.IntSlider(min=min_year,                                 max=max_year, step=1,                                 value=round(df.year.mean(),0)))

图片

它显示了各大洲与气泡大小作为人口的关系。

这就是我们制作5D散点图的方式。它可以尽可能在同一图像中告诉人们所需要的信息。

责任编辑:武晓燕 来源: Python学研大本营 数据维度5D散点图

(责任编辑:娱乐)

    推荐文章
    • 现代传播(00072.HK)预计年度由盈转亏逾6500万元 集团广告收益下降

      现代传播(00072.HK)预计年度由盈转亏逾6500万元 集团广告收益下降现代传播(00072.HK)发布公告,公司预计截至2020年12月31日止年度录得公司综合亏损不少于约人民币6500万元,较上年度公司净利润(合共约人民币220万元)大幅减少。亏损乃主要归因于集团广告 ...[详细]
    • 蒜头发芽了还能吃吗

      蒜头发芽了还能吃吗蒜长芽了还能吃吗?会有营养吗?大蒜长芽后不会含有任何有害物质或者毒素,不过唯一变化的是味道会不如以前,所以可以放心食用。而且只要大蒜头部没有发生腐坏发霉,都是可以食用的。蒜头发芽了还能吃吗?那么有个问 ...[详细]
    • 龙淑芬什么梗

      龙淑芬什么梗龙淑芬什么梗?出自《欢乐喜剧人第五季》第四期,卢鑫玉浩的相声《侠客行不行》:说到小龙女的本名,竟然叫“龙淑芬”。重庆有家特别有名的烧烤串串,就叫重庆串串-淑芬掌...淑芬是什么梗问题一:何娟淑芬是什么 ...[详细]
    • 水杯壁很多气泡能喝吗

      水杯壁很多气泡能喝吗保温杯盖里面是泡沫健康吗?如果纯净水存放时间太长了,使其水变质了,倒入,这样的水是不可以喝的,会对健康造成危害,容易造成肠胃的疾病,出现腹痛、。水杯壁很多气泡能喝吗-业百科如果是加工过程中材质不均匀 ...[详细]
    • 四川宜宾:打通农民工服务“最后一米” 全面推动地方产业发展提速增效

      四川宜宾:打通农民工服务“最后一米” 全面推动地方产业发展提速增效为切实解决家乡企业的所思所盼,用心用情为农民工保驾护航,全面推动地方产业发展提速增效,4月21日,屏山县江北片区农民工综合服务站正式启用,该站是宜宾首创之举,将农民工综合服务站建在工业园区里,旨在零距 ...[详细]
    • 开始胃疼是什么梗

      开始胃疼是什么梗网上说的胃疼是什么梗?1、胃疼剧情,网络流行词,指一些看了使人胃疼的剧情。2、这里的剧情通常指动漫、游戏和其他ACG作品中男主在多个女主之间摇摆不定、无法抉择、我全都要的多角...看白色相簿2里面很多 ...[详细]
    • 馇子怎么炒

      馇子怎么炒炒碴子怎么做-懂得原料:碴子,:1.把碴子从袋子里拿出来,烧开水,把碴子烫下,把一坨一坨的搅开,放在凉水中过一下,捞出沥干,备用2.里脊。炒碴条怎么做?3.锅热油,下点葱末爆锅,放肉丝,炒变色,倒入剩 ...[详细]
    • 啥也不是这句话是什么梗

      啥也不是这句话是什么梗“你追了我八条街,我都给你说了,我不是你爹”这句话是什么梗?可能是游戏里的内容吧,这样的差不多内容也是有很多,一般都是在游戏里的,很多这样的情况可能是游戏里的内容吧,这样的差不多内容也是有很多,一般都 ...[详细]
    • 申万宏源(06806.HK)“21申证C2”3月19日起上升交易 期限3年

      申万宏源(06806.HK)“21申证C2”3月19日起上升交易 期限3年申万宏源(06806.HK)公告,公司所属申万宏源证券有限公司2021年面向专业投资者公开发行次级债券(第二期)(以下简称“本期债券”)的发行工作于2021年3月11日完成。本 ...[详细]
    • 开封后的牛奶可以保存多久

      开封后的牛奶可以保存多久牛奶开盖后放在冰箱里保存,是可以饮用的,牛奶打开后,在冰箱内保存,不要超过48小时,取出以后也要彻底的煮开,防止细菌感染,导致饮用后出现急性细。开盖的牛奶能放多久?建议不要超过24小时。开封之后的牛奶 ...[详细]
    热点阅读