文章目录

  • 1.可视化图形的简单分类
  • 2.Python中常用的两个可视化工具
  • 3.九种常用视图及其具体调用代码
    • 1.散点图(Scatter Chart)
    • 2.折线图(Line Chart)
    • 3.条形图(Bar Chart)
    • 4.箱线图(Boxplot)
    • 5.饼图(Pie Chart)
    • 6.热力图(Heatmap)
    • 7.蜘蛛图(雷达图)(Radar map)
    • 8.二元变量分布(双变量密度估计图)
    • 9.成对关系图( Pair Diagram)

1.可视化图形的简单分类

4种类别:
比较:展示事物的排列顺序,比如条图。
联系:查看两个变量之间关系,比如气泡图。
构成:每个部分所占整体的百分比,如饼图。
分布:关心各数值范围包含多少项目,如柱图

2.Python中常用的两个可视化工具

matplotlib和seaborn
调用方式:

import matplotlib.pyplot as plt
import seaborn as sns

区别:
Matplotlib是一个较为基础的工具,Seaborn的底层是基于Matplotlib的,
展开说一下:Seaborn是用户把自己常用到的可视化绘图过程进行了函数封装,形成的一个“快捷方式”,他相比Matplotlib的好处是代码更简洁,可以用一行代码实现一个清晰好看的可视化输出。主要的缺点则是定制化能力会比较差,只能实现固化的一些可视化模板类型;而Matplotlib是可以实现高度定制化绘图的,高度定制化可以让你获得最符合心意的可视化输出结果,但也因此需要设置更多的参数,因而代码更加复杂一些。

3.九种常用视图及其具体调用代码

seaborn画图函数,主要针对pandas的DataFrame或numpy数据,有以下几种主要形式:

sns.图名(x=‘X轴 列名’, y=‘Y轴 列名’, data=原始数据df对象)

sns.图名(x=‘X轴 列名’, y=‘Y轴 列名’, hue=‘分组绘图参数’, data=原始数据df对象)

sns.图名(x=np.array, y=np.array[, …])

1.散点图(Scatter Chart)

表现两个变量之间的关系

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 数据准备
N = 900
x = np.random.randn(N)
y = np.random.randn(N)
# 利用matplotlib绘制散点图
plt.scatter(x,y,marker = 'x')  # marker表示散点图的呈现方式为x,默认呈现方式为小圆点
plt.show()

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns# 数据准备
N = 500
x = np.random.randn(N)
y = np.random.randn(N)# 用Seaborn画图,可以直接从DataFrame入手画图
df = pd.DataFrame({'x1':x,'y1':y})
# 指定x轴标签为x1,y轴标签为y1,加载数据到jointplot,指定jointplot画图类型为散点图
sns.jointplot(x = 'x1',y = 'y1',data = df,kind = 'scatter',marker = 'x')
plt.show()

2.折线图(Line Chart)

折线图适合二维的大数据集,尤其是那些趋势比单个数据点更重要的场合,它还适合多个二维数据集的比较

# 画折线图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns# 加载数据
x = []
for i in range(1900,1911,1):x.append(i)
y = [265, 323, 136, 220, 305, 350, 419, 450, 560, 720, 830]# 用matplotlib画折线图
print('用matplotlib画折线图\n')
plt.plot(x,y)
plt.show()

# 画折线图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns# 加载数据
x = []
for i in range(1900,1911,1):x.append(i)
y = [265, 323, 136, 220, 305, 350, 419, 450, 560, 720, 830]# 用seaborn画折线图
print('用seaborn画折线图\n')
df = pd.DataFrame({'x':x,'y':y})

3.条形图(Bar Chart)

用于分类展示

# 画条形图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns# 数据加载
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签,设置为黑体
x = ['中国','意大利','日本','美国']
y = [12,34,56,77]# 用matplotlib画图
plt.bar(x,y)
plt.show()

# 画条形图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns# 数据加载
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签,设置为黑体
x = ['中国','意大利','日本','美国']
y = [12,34,56,77]# 用seaborn画图
sns.barplot(x,y)
plt.show()

import matplotlib.pyplot as plt
%matplotlib inline
'''
操作时同时运行%matplotlibinline,那么绘图下方就能自动显示代码块,
否则用户每次绘图时都需要输入plt.show()来创建新图。
此功能是Jupyter Notebook / IPython独有的
'''
df = pd.DataFrame(np.random.rand(10,4), columns=['a','b','c','d'])
# 使用bar()生成直方图,barh()生成水平条形图(要生成一个堆积条形图,需要指定stacked=True)
print('条形图\n')
df.plot.bar()
plt.show()
print('水平条形图\n')
df.plot.barh()
plt.show()
print('堆积条形图\n')
df.plot.bar(stacked=True)
plt.show()
print('水平堆积条形图\n')
df.plot.barh(stacked=True)
plt.show()




4.箱线图(Boxplot)

展现数据的分布和关联情况
有上边缘,上四分位数,中位数,下四分位数,下边缘

#  箱线图:
# 数据准备
# 生成0-1之间的10*4维度数据
data=np.random.normal(size=(10,4))
lables = ['A','B','C','D']
# 用Matplotlib画箱线图
plt.boxplot(data,labels=lables)
plt.show()

#  箱线图:
# 数据准备
# 生成0-1之间的10*4维度数据
data=np.random.normal(size=(10,4))
lables = ['A','B','C','D']
# 用Seaborn画箱线图
df = pd.DataFrame(data, columns=lables)
sns.boxplot(data=df)
plt.show()

5.饼图(Pie Chart)

用于分类展示
P.S:目前为止,饼图只可以由matplotlib画,seaborn不可以画饼图

# 饼图(只可以由matplotlib画,seaborn不可以画饼图)
import matplotlib.pyplot as plt nums = [34,56,78,90]
nums_labels = ['china','usa','uk','eu']
# 采用matplotlib画出来
plt.pie(x= nums,labels = nums_labels)
plt.show()

6.热力图(Heatmap)

表可以展现多变量之间的相关系数

# 热力图
np.random.seed(33)
data = np.random.rand(3,3)
sns.heatmap(data)
plt.show()

7.蜘蛛图(雷达图)(Radar map)

# 蜘蛛图:
# 数据准备
labels=np.array([u"推进","KDA",u"生存",u"团战",u"发育",u"输出"]) 
# u在这里的作用是表明编码用的是unicode编码方式
stats=[76, 58, 67, 97, 86, 58]
# 画图数据准备,角度、状态值
angles=np.linspace(0, 2*np.pi, len(labels), endpoint=False)
stats=np.concatenate((stats,[stats[0]]))
angles=np.concatenate((angles,[angles[0]]))
# 用Matplotlib画蜘蛛图
fig = plt.figure()
ax = fig.add_subplot(111, polar=True)
ax.plot(angles, stats, 'o-', linewidth=2)
ax.fill(angles, stats, alpha=0.25)
# 设置中文字体
plt.rcParams['font.sans-serif']=['SimHei']
ax.set_thetagrids(angles * 180/np.pi, labels)
plt.show()

8.二元变量分布(双变量密度估计图)

展现数据的分布和关联情况,即用于统计相关性

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
data = sns.load_dataset('flights')
#  flights数据集是美国人在1950到1960年买飞机票的数据集,是seaborn自带的数据集
display(data)
# 用Seaborn画二元变量分布图(散点图,核密度图,Hexbin图)
sns.jointplot(x = data['year'],y = data['passengers'],kind = 'scatter')
sns.jointplot(x=data['year'],y = data['passengers'],kind ='kde')
sns.jointplot(x=data['year'],y=data['passengers'],kind = 'hex')
plt.show()




9.成对关系图( Pair Diagram)

可以展现多个变量,两两之间的散点图,以及自身的分布规律,在seaborn中可以使用pairplot()绘制。

参数diag_kind:自身分布的展现类型(如:直方图,密度图)

参数markers:散点图中点的形状

参数plot_kws:调节点的大小,颜色,线的宽度等

参数diag_kws:展示形式的调整(如:密度图中十分填充)

参数data:可视化的数据对象

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns data = sns.load_dataset('flights')
sns.pairplot(data)
plt.show()

[小白系列][可视化基础]数据可视化视图从入门到不放弃,数据可视化视图都有哪些,怎么选用,我们一起来康康相关推荐

  1. c mysql 视图_MySQL入门教程(七)之视图

    相关阅读: 视图是从一个或多个表中导出来的虚拟表.视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据. 1.视图简介 1.1 视图的含义 视图是从一个或多个表中导出来的虚拟表,还可以从已经存在的 ...

  2. 数据可视化系列-01大数据可视化基础

    文章目录 1.概述 2.大数据可视化基础 2.1 数据可视化基础知识 1.数据可视化简史: 2.数据可视化是什么: 3.数据可视化的分类: 4.数据可视化流程: 5.数据可视化的意义: 2.2 认识B ...

  3. 【Python数据科学快速入门系列 | 06】Matplotlib数据可视化基础入门(一)

    这是机器未来的第52篇文章 原文首发地址:https://robotsfutures.blog.csdn.net/article/details/126899226 <Python数据科学快速入 ...

  4. 这就是数据分析之数据可视化基础概念及工具

    图片在内容表达上,要远胜于文字,它不仅能体现数据真实性,还能给人很大的想象空间.如果你想做一名数据分析师,那么掌握可视化技能是必不可少的,因为在大部分情况下,老板更关心呈现的结果. 数据可视化的视图都 ...

  5. 【PBL项目实战】户外智慧农场项目实战系列——7.Mind+Mixly双平台工业级多合一空气质量传感器数据上云及云端可视化展示

    [PBL项目实战]户外智慧农场项目实战系列--7.Mind+Mixly双平台工业级多合一空气质量传感器数据上云及云端可视化展示 原文链接  https://mp.weixin.qq.com/s/ZEU ...

  6. Matplotlib【学习大礼包】数据可视化基础 掌获绘图基础语法与常用参数、设置pyplot的动态rc参数、 绘制散点图、折线图、直方图、饼图

    文章目录 如何查看完整版!!(代码+图片) 第3章 Matplotlib 数据可视化基础 3.1 掌获绘图基础语法与常用参数 3.1.1 掌获pyplot基础语法 1.创建画布与创建子图 2.添加画布 ...

  7. python基础学习[python编程从入门到实践读书笔记(连载五)]:数据可视化项目第16章

    文章目录 下载数据 制作全球地震散点图:JSON格式 end 几个实验结果: 每日最高气温: 地震图绘制: 下载数据 CSV文件格式 在文本文件中存储数据,一个简单方式是将数据作为一系列以逗号分隔的值 ...

  8. matplotlib 标签_matplotlib数据可视化基础设置

    matplotlib数据可视化基础 图形在jupyter notebook中显示图形 % # 中文和负号的正常显示 #plt.rcParams['font.sans-serif'] = ['Micro ...

  9. 数据科学与python语言——Matplotlib数据可视化基础

    Matplotlib数据可视化基础 一.读取数据与数据处理阶段 1.提取指定行中的数据 2.得到>指定数值的数据 3.得到=指定值得数据 4.整体的数据处理: 二.画图函数 1.plt.subp ...

最新文章

  1. php 静态类内存,php面向对象中static静态属性与方法的内存位置分析
  2. matlab 读取文件的精度,读取数据文件精度问题!真心求大神赐教 - 程序语言 - 小木虫 - 学术 科研 互动社区...
  3. java中输出时 什么作用_JAVA中输入和输出处理(Java I/O)重点总结
  4. 二手轻型载货车报价图片_别买贵了,老陈带你走进二手iPhone的大本营:深圳飞扬市场...
  5. Spring Cloud-微服务架构集大成者
  6. C++学习笔记:(七)C语言实现面向对象编程
  7. python循环顶帖_设计Python数据库连接池1-对象的循环引用问题
  8. specs.4.8.gz_使用Specs2和客户端API 2.0进行富有表现力的JAX-RS集成测试
  9. Speedment 3.0的新功能
  10. mongodb数据库,批量插入性能测试记录
  11. 【小白的CFD之旅】22 好网格与坏网格
  12. “图片”--上传(文件上传一致,单文件)
  13. Windows Apache Django 配置
  14. 链克价格一路高涨,简单 5 招让你快速获取链克
  15. Camtasia简单视频剪辑教程分享:实力干货
  16. 软件使用-如何卸载360安全客户端
  17. 三流领导管下级,二流领导管同级,一流领导管......
  18. 考研数学 第7讲 零点问题和微分不定式
  19. FRABA绝对值编码器 OCD58-EA00B-1213-S0
  20. 阿里云学生成长计划续费资格考试

热门文章

  1. 无人驾驶技术入门(三)| 百度无人车传感器 GPS 深入剖析
  2. python学习 之 下载BliBli视频
  3. Dotween运动曲线与路径动画
  4. 豌豆淘打造“云创业”领跑电商新经济,重磅推出科技创业新模式
  5. 腾讯优图OCR----识别图片文字
  6. 看深圳富人和穷人的记帐单
  7. [详解]ArchLinux设置全局热键
  8. 虚拟机关闭了密码保护共享,访问的时候还提示输入密码
  9. 说话人识别中训练通用背景模型(UBM)的研究
  10. 二元函数连续与偏导数存在的关系_怎样理解多元函数,连续与偏导存在的关系,偏导连续之间的关系...