- Matplotlib 基础
- Matplotlib - 首页
- Matplotlib - 简介
- Matplotlib - 与 Seaborn 的比较
- Matplotlib - 环境搭建
- Matplotlib - Anaconda 发行版
- Matplotlib - Jupyter Notebook
- Matplotlib - Pyplot API
- Matplotlib - 简单绘图
- Matplotlib - 保存图片
- Matplotlib - 标记
- Matplotlib - 图形
- Matplotlib - 样式
- Matplotlib - 图例
- Matplotlib - 颜色
- Matplotlib - 颜色图
- Matplotlib - 颜色图归一化
- Matplotlib - 选择颜色图
- Matplotlib - 颜色条
- Matplotlib - 文本
- Matplotlib - 文本属性
- Matplotlib - 子图标题
- Matplotlib - 图片
- Matplotlib - 图片蒙版
- Matplotlib - 注释
- Matplotlib - 箭头
- Matplotlib - 字体
- Matplotlib - 什么是字体?
- 全局设置字体属性
- Matplotlib - 字体索引
- Matplotlib - 字体属性
- Matplotlib - 刻度
- Matplotlib - 线性和对数刻度
- Matplotlib - 对称对数和 Logit 刻度
- Matplotlib - LaTeX
- Matplotlib - 什么是 LaTeX?
- Matplotlib - LaTeX 用于数学表达式
- Matplotlib - 在注释中使用 LaTeX 文本格式
- Matplotlib - PostScript
- 启用注释中的 LaTeX 渲染
- Matplotlib - 数学表达式
- Matplotlib - 动画
- Matplotlib - 绘图元素
- Matplotlib - 使用 Cycler 进行样式设置
- Matplotlib - 路径
- Matplotlib - 路径效果
- Matplotlib - 变换
- Matplotlib - 刻度和刻度标签
- Matplotlib - 弧度刻度
- Matplotlib - 日期刻度
- Matplotlib - 刻度格式化器
- Matplotlib - 刻度定位器
- Matplotlib - 基本单位
- Matplotlib - 自动缩放
- Matplotlib - 反转坐标轴
- Matplotlib - 对数坐标轴
- Matplotlib - Symlog
- Matplotlib - 单位处理
- Matplotlib - 带单位的椭圆
- Matplotlib - 脊柱
- Matplotlib - 坐标轴范围
- Matplotlib - 坐标轴刻度
- Matplotlib - 坐标轴刻度
- Matplotlib - 格式化坐标轴
- Matplotlib - Axes 类
- Matplotlib - 双坐标轴
- Matplotlib - Figure 类
- Matplotlib - 多图
- Matplotlib - 网格
- Matplotlib - 面向对象接口
- Matplotlib - PyLab 模块
- Matplotlib - Subplots() 函数
- Matplotlib - Subplot2grid() 函数
- Matplotlib - 锚定绘图元素
- Matplotlib - 手动等高线
- Matplotlib - 坐标报告
- Matplotlib - AGG 滤镜
- Matplotlib - 飘带框
- Matplotlib - 填充螺旋线
- Matplotlib - Findobj 演示
- Matplotlib - 超链接
- Matplotlib - 图片缩略图
- Matplotlib - 使用关键字绘图
- Matplotlib - 创建 Logo
- Matplotlib - 多页 PDF
- Matplotlib - 多进程
- Matplotlib - 打印标准输出
- Matplotlib - 复合路径
- Matplotlib - Sankey 类
- Matplotlib - MRI 与 EEG
- Matplotlib - 样式表
- Matplotlib - 背景颜色
- Matplotlib - Basemap
- Matplotlib 事件处理
- Matplotlib - 事件处理
- Matplotlib - 关闭事件
- Matplotlib - 鼠标移动
- Matplotlib - 点击事件
- Matplotlib - 滚动事件
- Matplotlib - 按键事件
- Matplotlib - 选择事件
- Matplotlib - 透镜
- Matplotlib - 路径编辑器
- Matplotlib - 多边形编辑器
- Matplotlib - 定时器
- Matplotlib - Viewlims
- Matplotlib - 缩放窗口
- Matplotlib 小部件
- Matplotlib - 游标小部件
- Matplotlib - 带注释的游标
- Matplotlib - 按钮小部件
- Matplotlib - 复选框
- Matplotlib - 套索选择器
- Matplotlib - 菜单小部件
- Matplotlib - 鼠标游标
- Matplotlib - 多游标
- Matplotlib - 多边形选择器
- Matplotlib - 单选按钮
- Matplotlib - 范围滑块
- Matplotlib - 矩形选择器
- Matplotlib - 椭圆选择器
- Matplotlib - 滑块小部件
- Matplotlib - 跨度选择器
- Matplotlib - 文本框
- Matplotlib 绘图
- Matplotlib - 条形图
- Matplotlib - 直方图
- Matplotlib - 饼图
- Matplotlib - 散点图
- Matplotlib - 箱线图
- Matplotlib - 小提琴图
- Matplotlib - 等高线图
- Matplotlib - 3D 绘图
- Matplotlib - 3D 等高线
- Matplotlib - 3D 线框图
- Matplotlib - 3D 表面图
- Matplotlib - 矢羽图
- Matplotlib 有用资源
- Matplotlib - 快速指南
- Matplotlib - 有用资源
- Matplotlib - 讨论
Matplotlib - 超链接
超链接,通常称为链接,是一个导航元素,以各种形式呈现,例如文本、图像、图标或按钮,位于文档或网页中。单击或激活时,超链接会将用户重定向到指定的 URL 或资源,从而创建无缝且交互式的体验。
Matplotlib 提供各种工具,用于在绘图中包含超链接。在本教程中,您将了解如何在 Matplotlib 绘图中添加超链接,例如 SVG 图形和 PdfPages。
创建带有超链接的 SVG 图形
SVG(可缩放矢量图形)是一种基于 XML 的图像格式,支持超链接。但是,必须注意的是,Matplotlib 中的超链接专门适用于 SVG 输出。如果绘图保存为静态图像(例如 PNG 或 JPEG),或在窗口中显示为绘图,则超链接功能将无法使用。
在这种情况下,您可以在具有可点击元素的交互式绘图中使用此功能。
示例
在此示例中,创建了一个散点图,并使用 set_urls 方法为各个数据点分配超链接。
import matplotlib.pyplot as plt import numpy as np fig = plt.figure() s = plt.scatter([1, 2, 3], [4, 5, 6]) s.set_urls(['https://tutorialspoint.com', 'https://tutorialspoint.com/matplotlib/index.htm', None]) fig.savefig('scatter.svg')
输出
运行上述代码后,您可以在输出目录中检查 .svg 图片文件。
在 PdfPages 中添加超链接
matplotlib 中的PdfPages 模块允许创建多页 PDF 文档。您可以使用 matplotlib 文本元素向这些 pdf 页面添加超链接。
示例
在此示例中,使用 PdfPages 创建了一个 PDF 文档,并将带有超链接的文本元素添加到绘图中。
import matplotlib.pyplot as plt from matplotlib.backends.backend_pdf import PdfPages msr_line4 = r'$\bf{' + 'Tutorialspoint\ Matplotlib\ Resource : ' + '}$' + "https://tutorialspoint.com/matplotlib/index.htm" with PdfPages('Adding_hyperlink_inside_a_PdfPage.pdf') as pdf: plt.figure(figsize=(11, 8.5)) ax2 = plt.subplot2grid((9, 5), (1, 0), rowspan=1, colspan=2) ax2.text(0, 0, msr_line4, fontsize=9) plt.axis('off') pdf.savefig() plt.close
输出
运行上述代码后,您可以在输出目录中检查 .pdf 文件。
交互式绘图中的超链接
对于未渲染为 SVG 的绘图(例如在 Matplotlib 窗口中显示的交互式绘图),可以使用事件处理程序实现超链接。通过创建一个函数来处理“pick”事件,您可以定义在单击特定元素(如数据点)时要执行的操作。
示例
以下示例演示了如何在单击数据点时在 Web 浏览器中打开指定的超链接。
import matplotlib.pyplot as plt import webbrowser class CustomObject: def __init__(self, x, y, name): self.x = x self.y = y self.name = name def on_pick(event): webbrowser.open('https://tutorialspoint.com') # Create custom objects obj_a = CustomObject(0.1, 0.3, "Object A") obj_b = CustomObject(0.2, 0.5, "Object B") # Plotting objects with picker attribute fig, ax = plt.subplots() for obj in [obj_a, obj_b]: artist = ax.plot(obj.x, obj.y, 'ro', picker=10)[0] artist.obj = obj # Connect pick event to the handler fig.canvas.callbacks.connect('pick_event', on_pick) plt.show()
输出
观看下面的视频了解输出的样子。
广告