python数据可视化案例——平行坐标系(使用pyecharts或pandas)

平行坐标是可视化高维几何和分析多元数据的常用方法。

为了在n维空间中显示一组点,绘制由n条平行线组成的背景,通常是垂直且等距的。所述的点N 维空间被表示为折线与顶点在平行的轴线; 第i 轴上顶点的位置对应于该点的第i个坐标。

此可视化与时间序列可视化密切相关,除了它应用于轴与时间点不对应的数据,因此没有自然顺序。因此,不同的轴布置可能是有意义的。

一、平行坐标图

平行坐标图(parallel coordinates plot)是对于具有多个属性问题的一种可视化方法,下图为平行坐标图的基本样式,数据集的一行数据在平行坐标图中用一条折线表示,纵向是属性值,横向是属性类别(用索引表示),如下图,一条数据[1 3 2 4]对应图中的折线。这条折线是根据属性的索引值和属性值画出来的。

 二、平行坐标图的解读

首先我们用不同的颜色来标识不同的标签,那么关于属性与标签之间的关系,我们可以从图中获得哪些信息?

(1)折线走势“陡峭”与“低谷”只是表示在该属性上属性值的变化范围的大小,对于标签分类不具有决定意义,但是“陡峭“的属性上属性值间距较大,视觉上更容易区分出不同的标签类别

(2)标签的分类主要看相同颜色的折线是否集中,若在某个属性上相同颜色折线较为集中,不同颜色有一定的间距,则说明该属性对于预测标签类别有较大的帮助

(3)若某个属性上线条混乱,颜色混杂,则较大可能该属性对于标签类别判定没有价值
————————————————
版权声明:本文为CSDN博主「x-dusk」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wyfcode/article/details/82587440

python数据可视化代码和案列

import matplotlib.pyplot as plt
import pandas as pd
from pandas.tools.plotting import parallel_coordinates

data = pd.read_csv(‘E:/ProgramData/Anaconda3/pkgs/pandas-0.23.0-py36h830ac7b_0/Lib/site-packages/pandas/tests/data/iris.csv‘)
data_1 =data[[‘Name‘,‘SepalLength‘, ‘SepalWidth‘, ‘PetalLength‘, ‘PetalWidth‘]]

parallel_coordinates(data_1,‘Name‘)
plt.legend(loc=‘upper center‘, bbox_to_anchor=(0.5,-0.1),ncol=3,fancybox=True,shadow=True)
plt.show()

from pyecharts import options as opts
from pyecharts.charts import Page, Parallel

data = [
    [1, 91, 45, 125, 0.82, 34],
    [2, 65, 27, 78, 0.86, 45],
    [3, 83, 60, 84, 1.09, 73],
    [4, 109, 81, 121, 1.28, 68],
    [5, 106, 77, 114, 1.07, 55],
    [6, 109, 81, 121, 1.28, 68],
    [7, 106, 77, 114, 1.07, 55],
    [8, 89, 65, 78, 0.86, 51, 26],
    [9, 53, 33, 47, 0.64, 50, 17],
    [10, 80, 55, 80, 1.01, 75, 24],
    [11, 117, 81, 124, 1.03, 45],
]
c = (
    Parallel()
    .add_schema(
        [
            {"dim": 0, "name": "data"},
            {"dim": 1, "name": "AQI"},
            {"dim": 2, "name": "PM2.5"},
            {"dim": 3, "name": "PM10"},
            {"dim": 4, "name": "CO"},
            {"dim": 5, "name": "NO2"},
        ]
    )
    .add("parallel", data)
    .set_global_opts(title_opts=opts.TitleOpts(title="Parallel-基本示例"))
)

c.render("平行坐标系图1.html")

from pyecharts import options as opts
from pyecharts.charts import Page, Parallel

data = [
    [1, 91, 45, 125, 0.82, 34, 23, "良"],
    [2, 65, 27, 78, 0.86, 45, 29, "良"],
    [3, 83, 60, 84, 1.09, 73, 27, "良"],
    [4, 109, 81, 121, 1.28, 68, 51, "轻度污染"],
    [5, 106, 77, 114, 1.07, 55, 51, "轻度污染"],
    [6, 109, 81, 121, 1.28, 68, 51, "轻度污染"],
    [7, 106, 77, 114, 1.07, 55, 51, "轻度污染"],
    [8, 89, 65, 78, 0.86, 51, 26, "良"],
    [9, 53, 33, 47, 0.64, 50, 17, "良"],
    [10, 80, 55, 80, 1.01, 75, 24, "良"],
    [11, 117, 81, 124, 1.03, 45, 24, "轻度污染"],
    [12, 99, 71, 142, 1.1, 62, 42, "良"],
    [13, 95, 69, 130, 1.28, 74, 50, "良"],
    [14, 116, 87, 131, 1.47, 84, 40, "轻度污染"],
]
c = (
    Parallel()
    .add_schema(
        [
            opts.ParallelAxisOpts(dim=0, name="data"),
            opts.ParallelAxisOpts(dim=1, name="AQI"),
            opts.ParallelAxisOpts(dim=2, name="PM2.5"),
            opts.ParallelAxisOpts(dim=3, name="PM10"),
            opts.ParallelAxisOpts(dim=4, name="CO"),
            opts.ParallelAxisOpts(dim=5, name="NO2"),
            opts.ParallelAxisOpts(dim=6, name="CO2"),
            opts.ParallelAxisOpts(
                dim=7,
                name="等级",
                type_="category",
                data=["优", "良", "轻度污染", "中度污染", "重度污染", "严重污染"],
            ),
        ]
    )
    .add("parallel", data)
    .set_global_opts(title_opts=opts.TitleOpts(title="Parallel-Category"))
)

c.render("平行坐标系图2.html")
    

 pyecharts画图更多请查看官方文档:

http://pyecharts.org/#/zh-cn/basic_charts?id=parallel%EF%BC%9A%E5%B9%B3%E8%A1%8C%E5%9D%90%E6%A0%87%E7%B3%BB

原文地址:https://www.cnblogs.com/caiyishuai/p/12322671.html

时间: 2024-11-06 21:09:49

python数据可视化案例——平行坐标系(使用pyecharts或pandas)的相关文章

python数据可视化:pyecharts

发现了一个做数据可视化非常好的库:pyecharts.非常便捷好用,大力推荐!! 官方介绍:pyecharts 是一个用于生成 Echarts 图表的类库.Echarts 是百度开源的一个数据可视化 JS 库.用 Echarts 生成的图可视化效果非常棒,pyecharts 是为了与 Python 进行对接,方便在 Python 中直接使用数据生成图. 中文教程也非常具体:https://pyecharts.org/#/zh-cn/quickstart?id=%e5%a6%82%e4%bd%95

Python 数据可视化工具以及数据分析开发架构

Python 数据可视化进阶 Python数据可视化教程:基于 plotly 动态可视化绘图 ?https://edu.51cto.com/sd/4bff8 ? Python数据可视化教程 Seaborn ?https://edu.51cto.com/sd/19627 Python 数据分析实战 视频课程https://edu.51cto.com/sd/63225 Python数据可视化: pyecharts实战 ????? pyecharts 是一个用于生成 Echarts 图表的类库.Ech

Python数据可视化编程实战——导入数据

1.从csv文件导入数据 原理:with语句打开文件并绑定到对象f.不必担心在操作完资源后去关闭数据文件,with的上下文管理器会帮助处理.然后,csv.reader()方法返回reader对象,通过该对象遍历所读取文件的所有行. 1 #!/usr/bin/env python 2 3 import csv 4 5 filename = 'ch02-data.csv' 6 7 data = [] 8 try: 9 with open(filename) as f: 10 reader = csv

遇见大数据可视化 : 那些幸运28 加拿大28 源码 WOW 的数据可视化案例

幸运28 加拿大28 源码[大神源码论坛]dsluntan.com  [布丁源码论坛]budingbbs.com 企娥3393756370 . 数据可视化的内涵并非只是专业人员才能看得的懂的图表,当你想要通过数据来宣传证明自己时,你遇到的问题是大多数人并不能看懂你的图表.那么让数据可视化的过程更加的生动有趣.通俗易懂就显的尤为重要了. 如何才能让数据可视化在面向普罗大众更容易接受和理解,甚至产生WOW的感觉呢?下面我试着通过一些具体的数据可视化案例来说明. U.S. Gun Deaths "U.

【数据科学】Python数据可视化概述

注:很早之前就打算专门写一篇与Python数据可视化相关的博客,对一些基本概念和常用技巧做一个小结.今天终于有时间来完成这个计划了! 0. Python中常用的可视化工具 Python在数据科学中的地位,不仅仅是因为numpy, scipy, pandas, scikit-learn这些高效易用.接口统一的科学计算包,其强大的数据可视化工具也是重要组成部分.在Python中,使用的最多的数据可视化工具是matplotlib,除此之外还有很多其他可选的可视化工具包,主要包括以下几大类: matpl

分享《Python数据可视化编程实战》中文版PDF+英文版PDF+源代码

下载:https://pan.baidu.com/s/17-gPTIYJsHc4Xn_f5sVYXw <Python数据可视化编程实战>中文版PDF+英文版PDF+源代码 中文版PDF,带目录和书签:英文版PDF,带目录和书签:中英文两版可以对比学习.配套源代码:经典书籍,讲解详细:中文版如图: 原文地址:http://blog.51cto.com/3215120/2311995

《Python数据可视化编程实战》中文版PDF+英文版PDF+源代码

资源链接:https://pan.baidu.com/s/1XqN3YBmL5Y1jknUbaiv-Qg<Python数据可视化编程实战>中文版PDF+英文版PDF+源代码中文版PDF,带目录和书签:英文版PDF,带目录和书签:中英文两版可以对比学习.配套源代码:经典书籍,讲解详细:中文版如图: 原文地址:http://blog.51cto.com/14063572/2318482

分享《Python数据可视化编程实战》+PDF+源码+Igor Milovanovic+颛清山

下载:https://pan.baidu.com/s/1R6n3aE2_jIGnOmFR7jKx0A 更多分享资料:http://blog.51cto.com/14087171 <Python数据可视化编程实战>中文版PDF+英文版PDF+源代码 中文版PDF,带目录和书签:英文版PDF,带目录和书签:中英文两版可以对比学习.配套源代码:经典书籍,讲解详细:中文版如图: 原文地址:http://blog.51cto.com/14087171/2321650

Python数据可视化的四种简易方法

摘要: 本文讲述了热图.二维密度图.蜘蛛图.树形图这四种Python数据可视化方法. 数据可视化是任何数据科学或机器学习项目的一个重要组成部分.人们常常会从探索数据分析(EDA)开始,来深入了解数据,并且创建可视化确实有助于让问题更清晰和更容易理解,尤其是对于那些较大的高维度数据集.在项目结束的时候,能够以清晰的.简洁的和令人信服的方式呈现最终结果,这是非常重要的,让你的用户能够理解和明白. 你可能已经看过了我之前的文章<5种快速和简单的Python数据可视化方法(含代码)>(5 Quick