【matplotlib】可视化解决方案——如何向画布添加交叉直线

概述

在 matplotlib 中,如果想要在画布上添加一组横纵较差的直线,需要使用到 Cursor 类,该类实现了图形化界面中任何位置的数值定位可视化某种意义上来讲,这种横纵交叉线类似数值放大镜,可以清楚地显示任何位置的坐标数值,这对使用者来说可以更方便的窥探数据的规律和特点。

Cursor 类源码如下:

# ax: 指定光标附加的轴,一般是一个Axes对象;
# horizOn: 指定是否绘制水平线;
# vertOn: 指定是否绘制垂直线;
# useblit: 如果后端支持,使用blitting加快绘图速度;
# lineprops: 指定水平线和垂直线的属性,本质上是指定Line2D实例的相关属性
class Cursor(AxesWidget):
	def __init__(self, ax, horizOn=True, vertOn=True, useblit=False,  
             **lineprops):

示例

import numpy as np  
import matplotlib.pyplot as plt  
  
from matplotlib.widgets import Cursor  
  
lineprops = dict(color='red', lw=2)  
fig, ax = plt.subplots(1, 1)  
ax.set_facecolor("lemonchiffon")  
  
x = np.random.random(100)  
y = np.random.random(100)  
ax.scatter(x, y, marker='o')  
ax.set_xlim(-0.02, 1.02)  
ax.set_ylim(-0.02, 1.02)  
cursor = Cursor(ax, useblit=True, **lineprops)  
plt.show()

运行效果:

在这里插入图片描述

往期回顾

  1. 【matplotlib】可视化解决方案——如何解决matplotlib中文乱码问题
  2. 【matplotlib】可视化解决方案——如何设置matplotlib风格集
  3. 【matplotlib】可视化解决方案——如何设置轴标签的透明度和大小
  4. 【matplotlib】可视化解决方案——如何向图表中添加数据表
  5. 【matplotlib】可视化解决方案——如何更改绘图区域背景颜色
  6. 【matplotlib】可视化解决方案——如何使用数学公式
  7. 【matplotlib】可视化解决方案——绘图刻度设置
  8. 【matplotlib】可视化解决方案——共享绘图区域问题
  9. 【matplotlib】可视化解决方案——子图设置大标题问题解决方案
  10. 【matplotlib】可视化解决方案——子图间距问题解决方案

文中难免会出现一些描述不当之处(尽管我已反复检查多次),欢迎在留言区指正,相关的知识点也可进行分享,希望大家都能有所收获!!如果觉得我的文章写得还行,不妨支持一下。你的每一个转发、关注、点赞、评论都是对我最大的支持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猪猪家的大猪猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值