成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

添加數據維度,使用Python繪制5D散點圖

開發 前端
散點圖通常用于比較2個不同特征以確定它們之間的關系。散點圖也可以添加更多的維度來反映數據,例如使用顏色、氣泡大小等。在本文中,將介紹如何繪制一個五維的散點圖。

散點圖通常用于比較2個不同特征以確定它們之間的關系。散點圖也可以添加更多的維度來反映數據,例如使用顏色、氣泡大小等。在本文中,將介紹如何繪制一個五維的散點圖。

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

圖片

圖片

讓我們從二維開始,簡單地看一下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 plt
import numpy as np

plt.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 range
plt.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, widgets

min_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 sns

def 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 size
max_size=df['population'].max()/1000000  # Scale bubble maximum size

def 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學研大本營
相關推薦

2021-11-01 05:37:16

光存儲南安普頓大學存儲

2015-09-29 17:25:05

宣愛

2020-03-02 18:56:03

PythonGNU Octave編程語言

2012-05-07 14:25:16

HTML5

2010-07-21 16:20:45

SQL Server

2021-06-03 10:01:28

JDBCStatement接口

2021-05-21 10:01:01

JDBCJavaStatement接口

2011-12-29 14:22:40

Java

2010-07-02 09:28:18

SQL Server

2012-02-24 15:28:36

ibmdw

2024-03-13 00:00:01

可視化技術氣泡圖

2009-11-13 14:46:21

ADO.NET Dat

2020-06-05 08:38:39

python散點圖擬合

2021-07-01 09:24:35

PythonTable數據表

2025-04-22 09:26:00

2020-06-30 10:38:36

Python 開發編程語言

2010-07-01 16:45:15

SQL Server

2022-04-11 14:04:29

散點圖Harmony操作系統

2021-08-13 11:06:05

Kubernetes優化運維
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩精品一区二区三区视频播放 | 日韩国产黄色片 | 欧美精品一区二区蜜桃 | www.操.com | 奇米久久 | 成年人免费在线视频 | 伊人二区 | 欧美日韩午夜精品 | 99久久免费精品国产免费高清 | 成人1区2区 | 亚洲日本乱码在线观看 | 午夜免费看 | 国产日韩免费观看 | 国产丝袜一区二区三区免费视频 | 欧美国产精品一区二区三区 | 国产九九九| 亚洲黄色片免费观看 | 亚洲毛片在线观看 | 男女免费视频网站 | 网站黄色在线免费观看 | 成人一区二区电影 | 久久这里只有精品首页 | 欧美精品一区二区三区蜜桃视频 | 国产精品久久久久一区二区三区 | 日韩精品免费在线观看 | 国产一区二区三区 | 国产一区二区三区在线 | 亚洲日韩欧美一区二区在线 | 午夜一区二区三区视频 | 日韩国产欧美一区 | 日韩精品一区二区三区免费视频 | 在线观看中文字幕亚洲 | 亚洲欧美日本国产 | 欧美男人天堂 | 亚洲 中文 欧美 | 日韩中文一区二区 | 在线观看成人 | 一级全黄少妇性色生活免费看 | 久久久久国产一区二区三区 | 欧美日本久久 | 国产一区二区三区在线看 |