.可视化数据分析图表—常用图表的绘制3—散点图,面积图,热力图(代码片段)

七巷少年^ω^ 七巷少年^ω^     2022-12-16     706

关键词:

第五章. 可视化数据分析图

5.3 常用图表的绘制3—散点图,面积图,热力图

本节主要介绍常用图表的绘制,主要包括散点图,面积图,热力图。

1.散点图(matplotlib.pyplot.scatter)

·散点图主要用来查看数据的分布情况或相关性,一般用在线性回归分析中,查看数据点在坐标系上分布情况
·散点图与折线图的区别:散点图的各点之间不会按照前后关系以线条联系起来

1).语法:

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, *, edgecolors=None, plotnonfinite=False, data=None, **kwargs)

参数说明:
x,y:数据位置(x,y轴数据)。
s:标记大小,都一样大就填写一个数,想不同点大小不同,就写成一个向量 例s=[100,5]。
c:标记颜色,默认为blue。
marker:标记样式。
alpha:透明度。
linewidths: 线宽 默认是’face’。
edgecolors: 轮廓颜色(边框颜色)。

2).示例:

import pandas as pd
import matplotlib.pyplot as plt

pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel('F:\\\\Note\\\\清单.xlsx', sheet_name='Sheet4')
print(df)

# 设置画布
fig = plt.figure(figsize=(6, 4), facecolor='white')

plt.rcParams['font.sans-serif'] = ['SimHei']  # 解决中文乱码
plt.rcParams['axes.unicode_minus'] = False  # 解决负号不显示的问题


plt.scatter(df['姓名'], df['语文'], color='r')

# 设置网格线
plt.grid(color='0.5', linestyle='--', linewidth=1)

# 设置x,y轴坐标
plt.xlabel('姓名')
plt.ylabel('分数')

# 设置坐标轴刻度
# plt.xticks(range(0, 150, 25))
plt.yticks(range(0, 150, 10))

# 设置文本标签
for x, y in zip(df['语文'], range(0, 150, 25)):
    plt.text(x, y, '%.2f' % y, ha='center', va='center', fontsize=8, color='darkorange')

# 设置标题和图例
plt.title('语文成绩')

# 设置图标图例
plt.legend(df['语文'], title='成绩',loc='upper right')  # 手动添加图例时,有时文本会显示不全,在文本后面加一个逗号(,)可解决,例如('图书采购价目',)

# 调整图表与画布边缘间距
plt.subplots_adjust(left=0.15, bottom=0.15, right=0.9, top=0.9)

# 坐标轴的刻度线向内显示还是向外显示
plt.tick_params(left=True, bottom=True, right=False, top=False)

# 显示图像
plt.show()

清单.xlsx表格中的数据

结果展示:

2.面积图(matplotlib.pyplot.stackplot)

面积图用于体现数量随着时间变化的程度,也可用于引起人们对总体趋势的注意。

1).语法:

matplotlib.pyplot.stackplot(x,,*args,data=None,**kwags)

参数说明:
x:数据集,最终的直方图将对数据集进行统计
*args:当传入的参数个数未知时,使用 *args,指y轴数据中可以传入多少个y轴
data:如果给定一个数据参数,所有位置和关键字参数将会被替换掉
**kwags:关键字参数,例如color,alpha

2).示例:

清单.xlsx表格中的数据

  • 示例1:标准面积图
import pandas as pd
import matplotlib.pyplot as plt

pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel('F:\\\\Note\\\\清单.xlsx', sheet_name='Sheet2')
print(df)

# 设置画布
fig = plt.figure(figsize=(6, 4), facecolor='white')

plt.rcParams['font.sans-serif'] = ['SimHei']  # 解决中文乱码
plt.rcParams['axes.unicode_minus'] = False  # 解决负号不显示的问题

#标准面积图
plt.stackplot(df['姓名'], df['语文'], color='c')

# # 设置网格线
# plt.grid(color='0.5', linestyle='--', linewidth=1)

# 设置x,y轴坐标
plt.xlabel('姓名')
plt.ylabel('分数')

# 设置坐标轴刻度
# plt.xticks(range(0, 150, 25))
# plt.yticks(range(0, 150, 10))

# 设置文本标签
for x, y in zip(df['语文'], range(0, 150, 25)):
    plt.text(x, y, '%.2f' % y, ha='center', va='center', fontsize=8, color='darkorange')

# 设置标题和图例
plt.title('语文成绩')

# 设置图标图例
plt.legend(df['语文'], title='成绩',loc='upper right')  # 手动添加图例时,有时文本会显示不全,在文本后面加一个逗号(,)可解决,例如('图书采购价目',)

# 调整图表与画布边缘间距
plt.subplots_adjust(left=0.15, bottom=0.15, right=0.9, top=0.9)

# 坐标轴的刻度线向内显示还是向外显示
plt.tick_params(left=True, bottom=True, right=False, top=False)

# 显示图像
plt.show()

结果展示:

  • 示例2:堆叠面积图

    • 注意: 颜色是colors,不是color,若是color,堆叠面积图的颜色会是相同的

代码:

import pandas as pd
import matplotlib.pyplot as plt

pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel('F:\\\\Note\\\\清单.xlsx', sheet_name='Sheet2')
print(df)

# 设置画布
fig = plt.figure(figsize=(6, 4), facecolor='white')

plt.rcParams['font.sans-serif'] = ['SimHei']  # 解决中文乱码
plt.rcParams['axes.unicode_minus'] = False  # 解决负号不显示的问题

# 堆叠面积图
plt.stackplot(df['姓名'], df['语文'], df['数学'], df['英语'], colors=['c', 'skyblue', 'orange'])

# # 设置网格线
# plt.grid(color='0.5', linestyle='--', linewidth=1)

# 设置x,y轴坐标
plt.xlabel('姓名')
plt.ylabel('分数')

# 设置坐标轴刻度
# plt.xticks(range(0, 150, 25))
# plt.yticks(range(0, 150, 10))

# 设置标题和图例
plt.title('成绩')

# 设置图标图例
plt.legend([['语文'],['数学'],['英语']], title='成绩', loc='upper right')  # 手动添加图例时,有时文本会显示不全,在文本后面加一个逗号(,)可解决,例如('图书采购价目',)

# 调整图表与画布边缘间距
plt.subplots_adjust(left=0.15, bottom=0.15, right=0.9, top=0.9)

# 坐标轴的刻度线向内显示还是向外显示
plt.tick_params(left=True, bottom=True, right=False, top=False)

# 显示图像
plt.show()

结果展示:

3.热力图

热力图是通过密度函数进行可视化,用与表示地图中点的密度热图,利用热力图可以看数据表里的多个特征中的两两内容的相似度

1).示例1:

import pandas as pd
import matplotlib.pyplot as plt

pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel('F:\\\\Note\\\\清单.xlsx', sheet_name='Sheet2')
print(df)

# 设置画布
fig = plt.figure(figsize=(6, 4), facecolor='white')

plt.rcParams['font.sans-serif'] = ['SimHei']  # 解决中文乱码
plt.rcParams['axes.unicode_minus'] = False  # 解决负号不显示的问题

# 热力图
y = df['姓名']
x = df.loc[:, '语文':'物理'].values
plt.imshow(x)  # 负责对图像进行处理,并显示其格式,但是不能显示

# # 设置网格线
# plt.grid(color='0.5', linestyle='--', linewidth=1)

# 设置x,y轴坐标
plt.xlabel('学科')
plt.ylabel('姓名')

# 设置坐标轴刻度
plt.xticks(range(0, 6, 1), ['语文', '数学', '英语', '生物', '化学', '物理'])
plt.yticks(range(0, 6, 1), y)

# 设置标题和图例
plt.title('学生成绩统计热力图')

# 显示颜色条
plt.colorbar()

# 调整图表与画布边缘间距
plt.subplots_adjust(left=0.15, bottom=0.15, right=0.9, top=0.9)

# 坐标轴的刻度线向内显示还是向外显示
plt.tick_params(left=True, bottom=True, right=False, top=False)

# 显示图像
plt.show()

结果展示:

注意:代码中所涉及到的函数和参数,在图表的常用设置1图表的常用设置2 有所介绍

数字孪生|可视化图表之散点图

散点图,顾名思义就是使用一些散乱的点来展示数据的一种图表,这些点在哪个位置,是由其X值和Y值确定的,因此散点图也叫做XY散点图。在之前的文章中,我已经介绍过堆叠条形图、分组条形图和堆叠面积图,本文介绍一些... 查看详情

python的绘图工具matplotlib.pyplot(代码片段)

...流行和广泛使用的绘图库之一,适用于各种科学、工程和数据分析应用。总之,matplotlib.pyplot是一个非常强大和灵活的数据可视化工具,可以帮助您轻松创建各种类型的图表和图像,并提供了大量的自定义选项和功能。matplotlib.py... 查看详情

我们如何根据颜色标记散点图的图例

...】:2019-03-2813:28:47【问题描述】:我正在绘制一个图表来可视化一些排序算法在不同数据大小上的运行时间。条件是运行时间应该在y轴上,数据大小在x轴上。我通过将不同算法的运行时间与数据大小相比较来绘制散点图,并给... 查看详情

python数据可视化:数据关系图表可视化

目录1、散点图1.1、趋势显示的二维散点图1.2、分布显示的二维散点图1.3、散点曲线图 查看详情

excel绘制散点图时,如何进行分组绘图?

...组用不同颜色的点,怎么做到?1.创建数据表格。2.选择图表类型,插入散点图。选取区域B2:C11,单击菜单栏【插入】/【图表】/【散点图】,单击下拉列表【仅带数据标记的散点图】,插入图表。3.更改图表布局。单击图表区,... 查看详情

python金融数据分析:数据可视化

参考技术A课程简介本节为Python金融数据分析基础课程,将重点介绍使用matplotlib制作基本图表的方法,此外,也对较特别的金融常用图表进行了说明。建议初学者认真学习本节内容,已经掌握Python基本作图的读者可以直接跳转至... 查看详情

使用带有字典的matplotlib在python中绘制散点图

...。我想创建一个散点图,其中x:y是(x,y)坐标,title\'x\'将是图表的图例。我想创建以下数据集的图表,因此将以下所有数据组合在一个图表中.例如:用 查看详情

绘制多个散点图 - 渲染问题

...一个带有皱眉脸的正方形。我读到这意味着Chrome无法呈现图表。图表有多复杂并不重要。即使是9个基本图表也会导致一个无法呈现。请参阅下面的示 查看详情

再见matplotlib,可视化神器plotly绘制图表的太酷炫了(代码片段)

数据分析离不开数据可视化。我们最常用的就是pandas,matplotlib,pyecharts当然还有Tableau,最近看到一篇文章介绍plotly制图后,我感觉写的不够简洁明了。今天就给大家分享利用可视化神器Plotly绘制酷炫图表,欢... 查看详情

OpenOffice Calc 自动化如何更改散点图的图表标签

】OpenOfficeCalc自动化如何更改散点图的图表标签【英文标题】:OpenOfficeCalcautomationhowalterachartlabelofascatterdiagram【发布时间】:2010-11-1610:27:16【问题描述】:您好,请您帮我解决以下问题。我创建了一个散点图并从列的数据中绘制... 查看详情

七周成为数据分析师05_数据可视化

数据可视化之美数据可视化的目的是为了让数据更高效,让读者可以更高效阅读,而不单是自己使用。数据可视化首先需要突出数据背后的规律和重要因素,其次才是美观。数字可视化应该基于实际业务背景,比如地铁线路图并... 查看详情

tableau可视化数据分析60讲(十五)-tableau常用可视化视图(散点图&气泡图)

...tableau的高级部分内容,大家可自行订阅专栏tableau可视化数据分析高级教程https://blog.csdn.net/wenyusuran/category_9596753.html1.散点图Tableau在行搁架中至少使用一个度量,在列搁架中使用一个度量来创 查看详情

vtk 6.x,Qt:3D(线、面、散点图)绘图

...6.1,因为它总体上看起来非常强大,而且我还需要在以后可视化图像数据。我基本上得到了2D绘图,但在3D中绘制数据时卡住了。这是我尝试过的:我正在 查看详情

使用 Seaborn 散点图绘制最近的数据点

...可以很好地绘制散点图,但我想要做的也是以不同的颜色可视化今天的数据在哪里。我试过了:current_x=df[\'Prediction\'].iloc 查看详情

javascript数据可视化编程学习flotr2,包含简单的,柱状图,折线图,饼图,散点图

一、基础柱状图二、基础的折线图 三、基础的饼图四、基础的散点图 一、基础柱状图如果你还没有想好你的数据用什么类型的图表来展示你的数据,你应该首先考虑是否可以做成柱状图。柱状图可以表示数据的变化过程... 查看详情

matplotlib绘制常用三维图(代码片段)

...6三维折线图1三维图像的绘制简介Matplotlib使用和绘制二维图表:https://blog.csdn.net/ZGL_cyy/article/details/125705060matplotlib支持绘制三维线框图,三维曲面图,三维散点图.需要使用axes3d提供3d坐标系.frommpl_toolkits 查看详情

eviews怎么做散点图

...回归分析中,数据点在直角坐标系平面上的分布图,散点图表示因变量随自变量而变化的大致趋势,据此可以选择合适的函数对数据点进行拟合。用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关... 查看详情

图表基础

...时支持数据字段和对应属性进行绑定设置,为图表的无限可视化能力提供了可能。(√)445.判断题by帆软-RoyideFineBI可以根据用户拖入的字段,为用户智能推荐合适的可视化图表。(√)446.多选题by帆软-Royide目前地图图表自带的... 查看详情