当前位置: 首页 > news >正文

数据可视化(matplotlib)-------辅助图标的设置

目录

一、认识图表常用的辅助元素

坐标轴

 二、设置坐标轴的标签、刻度范围和刻度标签

(一)、设置坐标轴的标签

1、xlabel()------设置x轴标签

2、ylabel()------设置y轴标签

(二) 、设置刻度范围和刻度标签

1、xlim()和ylim()函数分别可以设置或获取x轴和y轴的刻度范围

2、xticks()或yticks()函数可以设置x轴或y轴的刻度线位置和刻度标签。

案例

三、添加标题和图例

(一)、title()函数可以添加图表标题

(二) 、legend()函数可以为图表添加图例

四、显示网格

显示指定样式的网格-----grid()函数显示图表中的网格

五、添加参考线和参考区域

1、axhline()函数可以为图表添加水平参考线

2、axvline()函数可以为图表添加垂直参考线

(二)、参考区域

1、axhspan()函数可以为图表添加水平参考区域

2、axvspan()函数可以为图表添加垂直参考区域


一、认识图表常用的辅助元素

坐标轴:分为单坐标轴和双坐标轴,单坐标轴按不同的方向又可分为水平坐标轴(又称x轴)和垂直坐标轴(又称y轴)。

标题:表示图表的说明性文本。

图例:用于指出图表中各组图形采用的标识方式。

网格:从坐标轴刻度开始的、贯穿绘图区域的若干条线,用于作为估算图形所示值的标准。

参考线:标记坐标轴上特殊值的一条直线。

参考区域:标记坐标轴上特殊范围的一块区域。

注释文本:表示对图形的一些注释和说明。

表格:用于强调比较难理解数据的表格。

坐标轴

坐标轴是由刻度标签刻度线(主刻度线和次刻度线)、轴脊坐标轴标签组成。

“x轴”为坐标轴的标签。

“0”~“7”均为刻度标签。

“0”~“7”对应的短竖线为刻度线,且为主刻度线。

刻度线上方的横线为轴脊。

matplotlib中的次刻度线默认是隐藏的。

 二、设置坐标轴的标签、刻度范围和刻度标签

(一)、设置坐标轴的标签

1、xlabel()------设置x轴标签

xlabel(xlabel, fontdict=None, labelpad=None, **kwargs)

xlabel:表示x轴标签的文本。

fontdict:表示控制标签文本样式的字典。

labelpad:表示标签与x轴轴脊间的距离。

2、ylabel()------设置y轴标签

ylabel(ylabel, fontdict=None, labelpad=None, **kwargs)

ylabel:表示y轴标签的文本。

fontdict:表示控制标签文本样式的字典。

labelpad:表示标签与y轴轴脊间的距离。

注:Axes对象使用set_xlabel()方法可以设置x轴的标签,使用set_ylabel()方法可以设置y轴的标签。set_xlabel()、set_ylabel()方法与xlabel()、ylabel()函数的参数用法相同。

(二) 、设置刻度范围和刻度标签

坐标轴的刻度范围取决于数据中的最大值和最小值。

例子:

若没有指定任何数据,x轴和y轴的刻度范围为0.05~1.05,刻度标签为[-0.2, 0. 0, 0.2, 0.4, 0.6, 0.8, 1. 0, 1.2];

若指定了数据,刻度范围和刻度标签会随着数据的变化而变化。

1、xlim()和ylim()函数分别可以设置或获取x轴和y轴的刻度范围

xlim(left=None, right=None,  emit=True, auto=False, *, xmin=None, xmax=None)

left:表示x轴刻度取值区间的左位数。

right:表示x轴刻度取值区间的右位数。

emit:表示是否通知限制变化的观察者,默认为True。

auto:表示是否允许自动缩放x轴,默认为True。

注:此外,Axes对象可以使用set_xlim()或set_ylim()方法设置x轴或y轴的刻度范围。

2、xticks()或yticks()函数可以设置x轴或y轴的刻度线位置和刻度标签。

xticks(ticks=None, labels=None, **kwargs)

ticks:表示刻度显示的位置列表,该参数可以设置为空列表,以此禁用x轴的刻度。

labels:表示指定位置刻度的标签列表。

注:此外,Axes对象可以使用set_xticks()或set_yticks()方法设置x轴或y轴的刻度线位置,使用set_xticklabels()或set_yticklabels()方法设置x轴或y轴的刻度标签。

案例

import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = np.linspace(-np.pi, np.pi, 256, endpoint=True)
y1, y2 = np.sin(x), np.cos(x)
plt.plot(x, y1, x, y2)
# 设置 x 轴和 y 轴的标签
plt.xlabel("x轴")
plt.ylabel("y轴")
# 设置 x 轴的刻度范围和刻度标签
plt.xlim(-4, 4)
# matplotlib有自己特殊的标记符,都是用$$括起来,字符串前要加个r(取消转义)
plt.xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi], [r'$-\pi$', r'$-\pi/2$',r'$0$', r'$\pi/2$', r'$\pi$'])
plt.show()

三、添加标题和图例

(一)、title()函数可以添加图表标题

title(label, fontdict=None, loc=‘center’, pad=None, **kwargs)

abel:表示标题的文本。

fontdict:表示控制标题文本样式的字典。

loc:表示标题的对齐样式。left,fight,centre

pad:表示标题与图表顶部的距离,默认为None。

注:Axes对象还可以使用set_title()方法为图表添加标题。

(二) 、legend()函数可以为图表添加图例

legend(handles, labels, loc, bbox_to_anchor, ncol, title, shadow, fancybox, *args, **kwargs)

handles:表示由图形标识构成的列表。

labels:表示由图例项构成的列表。

loc:用于控制图例在图表中的位置。

ncol:表示图例的列数,默认值为1。

title:表示图例的标题,默认值为None。

shadow :表示是否在图例后面显示阴影,默认值为None。

fancybox:表示是否为图例设置圆角边框,默认值为None

四、显示网格

网格可以分为垂直网格和水平网格,这两种网格既可以单独使用,也可以同时使用。

显示指定样式的网格-----grid()函数显示图表中的网格

grid(b=None, which='major', axis='both', **kwargs)

b:表示是否显示网格。

which:表示显示网格的类型,默认为major。

axis:表示显示哪个方向的网格,默认为both。

linewidth 或 lw:网格线的宽度。

还可以使用Axes对象的grid()方法显示网格。

若坐标轴没有刻度,则将无法显示网格。

五、添加参考线和参考区域

(一)、添加参考线2

1、axhline()函数可以为图表添加水平参考线

axhline(y=0, xmin=0, xmax=1, linestyle='-', **kwargs)

y:表示水平参考线的纵坐标。

xmin:表示水平参考线的起始位置,默认为0。

xmax:表示水平参考线的终止位置,默认为1。

linestyle:表示水平参考线的类型,默认为实线。

2、axvline()函数可以为图表添加垂直参考线

axvline(x=0, ymin=0, ymax=1, linestyle='-', **kwargs)

x:表示垂直参考线的横坐标。

ymin:表示垂直参考线的起始位置,默认为0。

ymax:表示垂直参考线的终止位置,默认为1。

linestyle:表示垂直参考线的类型,默认为实线。

(二)、参考区域

1、axhspan()函数可以为图表添加水平参考区域

axhspan(ymin, ymax, xmin=0, xmax=1, **kwargs)

ymin:表示水平跨度的下限,以数据为单位。

ymax:表示水平跨度的上限,以数据为单位。

xmin:表示垂直跨度的下限,以轴为单位,默认为0。

xmax:表示垂直跨度的上限,以轴为单位,默认为1。

2、axvspan()函数可以为图表添加垂直参考区域

axvspan(xmin, xmax, ymin=0, ymax=1, **kwargs)

xmin:表示垂直跨度的下限。

xmax:表示垂直跨度的上限。

相关文章:

  • 早餐 3.20
  • 笔记:代码随想录算法训练营day57:99.岛屿数量 深搜、岛屿数量 广搜、100.岛屿的最大面积
  • ssh连接解析时间过长如何解决
  • 模块、包和库
  • 【day16】搭建测试环境数据库
  • uni-app基础问题(一)
  • SysOM 可观测体系建设(一):万字长文解读低开销、高精度性能剖析工具livetrace
  • Linux线程操作(创建,终止,等待,分离)
  • 基于STM32电子钟闹钟数码管显示设计(Proteus仿真+程序+设计报告+原理图PCB+讲解视频)
  • 二分查找的应用
  • numpy学习笔记3:三维数组 np.ones((2, 3, 4)) 的详细解释
  • 汽车相关液体介绍
  • MinIO Docker
  • Linux性能监控工具nmon安装及使用
  • 3.20-1ui自动化切换,登录退出
  • Object 转 JSONObject 并排除null和““字符串
  • 应急响应笔记
  • stm32 2.0.3.0
  • python-leetcode 60.分割回文串
  • K8S中若要挂载其他命名空间中的 Secret
  • 国际博物馆日|航海博物馆:穿梭于海洋神话与造船工艺间
  • 茅台总经理到访五粮液:面对白酒行业周期性调整,需要团结一心的合力
  • 高飞已任南航集团党组副书记
  • 上海比常年平均时间提前12天入夏,明天最高气温可达33℃
  • 媒体评欧阳娜娜遭民进党当局威胁:艺人表达国家认同是民族大义
  • 普京召开俄乌谈判筹备会议,拉夫罗夫、绍伊古等出席