首页 > 其他分享 >Matplotlib 中文用户指南 7.1 交互式导航

Matplotlib 中文用户指南 7.1 交互式导航

时间:2023-05-02 16:31:37浏览次数:69  
标签:平移 轴域 鼠标 缩放 win Matplotlib 7.1 交互式 按钮


交互式导航

原文:Interactive navigation

译者:飞龙

协议:CC BY-NC-SA 4.0

Matplotlib 中文用户指南 7.1 交互式导航_缩放

所有图形窗口都带有导航工具栏,可用于浏览数据集。 以下是工具栏底部的每个按钮的说明:

Matplotlib 中文用户指南 7.1 交互式导航_工具栏_02

Home(首页)、Forward(前进)和Back(后退)按钮:

这些类似于 Web 浏览器的前进和后退按钮。 它们用于在之前定义的视图之间来回浏览。 它们没有意义,除非你已经使用平移和缩放按钮访问了其他地方。 这类似于尝试在访问新页面之前单击 Web 浏览器上的返回 - 什么都不会发生。 首页总是你第一个浏览的页面,以及你的数据的默认视图。 对于HomeForwardBack,应该将其看做 Web浏览器,其中的数据视图是网页。 使用PanZoom来定义新视图。

Matplotlib 中文用户指南 7.1 交互式导航_缩放_03

Pan/Zoom(平移/缩放)按钮

此按钮有两种模式:平移和缩放。 单击工具栏按钮激活平移和缩放,然后将鼠标放在轴域的某个地方。 按住鼠标左键并将其拖动到新位置来平移图形。 当你释放它时,你按下的点处的数据将移动到你释放的点。 如果在平移时按'x''y',移动会分别限制在xy轴。 按鼠标右键并将其拖动到新位置来进行缩放。 向右移动使x轴成比例放大,或者向左移动成比例缩小。 y轴和上/下移动同上。 开始缩放时鼠标下的点会保持静止,你可以缩放图形中的其它任意点。 你可以使用快捷键'x''y'CONTROL分别将缩放约束为x轴,y轴或保留宽高比。

使用极坐标绘图时,平移和缩放功能的行为不同。 可以使用鼠标左键拖动半径轴标签。 可以使用鼠标右键放大和缩小半径刻度。

Matplotlib 中文用户指南 7.1 交互式导航_快捷键_04

Zoom-to-rectangle(缩放到矩形)按钮

单击此工具栏按钮以激活此模式。 将鼠标放在轴域的某处,然后按鼠标左键。 在按住按钮的同时拖动鼠标到新位置并释放。 轴域会放大并限制于你定义的矩形。 在此模式中还有一个实验性的zoom out to rectangle(缩小到矩形),使用右键,将整个轴域缩小并放置在矩形定义的区域中。

Matplotlib 中文用户指南 7.1 交互式导航_快捷键_05

Subplot-configuration(子图配置)按钮

使用此工具配置子图的参数:左边距,右边距,上边距,下边距,行间隔和列间隔。

Matplotlib 中文用户指南 7.1 交互式导航_快捷键_06

Save(保存)按钮

单击此按钮可启动文件保存对话框。 你可以使用以下扩展名保存文件:pngpsepssvgpdf

浏览快捷键

下表包含所有默认的快捷键,可以使用matplotlibrc#keymap.*)覆盖。

命令

快捷键

主页/重置

hrhome

后退

c、左箭头或backspace

前进

v或右箭头

平移/缩放

p

缩放到矩形

o

保存

ctrl + s

切换全屏

ctrl + f

关闭绘图

ctrl + w

将平移/缩放限制于x

使用鼠标平移/缩放时按住x

将平移/缩放限制于y

使用鼠标平移/缩放时按住y

保留宽高比

使用鼠标平移/缩放时按住CONTROL

切换网格

鼠标在轴域上时按下g

切换x轴刻度(对数/线性)

鼠标在轴域上时按下Lk

切换y轴刻度(对数/线性)

鼠标在轴域上时按下l

如果你使用matplotlib.pyplot,则会为每个图形自动创建工具栏。 如果你正在编写自己的用户界面代码,则可以将工具栏添加为窗口小部件。 确切的语法取决于你的 UI,但在`matplotlib/examples/user_interfaces目录中有每个受支持的 UI 的示例。 这里是一些 GTK 的示例代码:

import gtk

from matplotlib.figure import Figure
from matplotlib.backends.backend_gtkagg import FigureCanvasGTKAgg as FigureCanvas
from matplotlib.backends.backend_gtkagg import NavigationToolbar2GTKAgg as NavigationToolbar

win = gtk.Window()
win.connect("destroy", lambda x: gtk.main_quit())
win.set_default_size(400,300)
win.set_title("Embedding in GTK")

vbox = gtk.VBox()
win.add(vbox)

fig = Figure(figsize=(5,4), dpi=100)
ax = fig.add_subplot(111)
ax.plot([1,2,3])

canvas = FigureCanvas(fig)  # a gtk.DrawingArea
vbox.pack_start(canvas)
toolbar = NavigationToolbar(canvas, win)
vbox.pack_start(toolbar, False, False)

win.show_all()
gtk.main()


标签:平移,轴域,鼠标,缩放,win,Matplotlib,7.1,交互式,按钮
From: https://blog.51cto.com/wizardforcel/6239999

相关文章

  • Theano 中文文档 0.9 - 7.1.1 Python教程
    7.1.1Python教程译者:Python文档协作翻译小组,原文:Pythontutorial。本文以CCBY-NC-SA4.0协议发布,转载请保留作者署名和文章出处。Python文档协作翻译小组人手紧缺,有兴趣的朋友可以加入我们,完全公益性质。交流群:467338606。在本文档中,我们假设读者了解Python。如果你需要学习......
  • Theano 中文文档 0.9 - 7.1.2 NumPy新手
    7.1.2NumPy新手译者:Python文档协作翻译小组,原文:NumPyrefresher。本文以CCBY-NC-SA4.0协议发布,转载请保留作者署名和文章出处。Python文档协作翻译小组人手紧缺,有兴趣的朋友可以加入我们,完全公益性质。交流群:467338606。这里有一些NumPy的快速指南:Matlab用户快速指南Numpy用......
  • Matplotlib 中文用户指南 3.8 路径教程
    路径教程原文:PathTutorial译者:飞龙协议:CCBY-NC-SA4.0位于所有matplotlib.patch对象底层的对象是Path,它支持moveto,lineto,curveto命令的标准几个,来绘制由线段和样条组成的简单和复合轮廓。路径由(x,y)顶点的(N,2)数组,以及路径代码的长度为N的数组实例化。例如,为了绘制(0,0)到(......
  • Matplotlib 中文用户指南 3.9 路径效果指南
    路径效果指南原文:Patheffectsguide译者:飞龙协议:CCBY-NC-SA4.0Matplotlib的patheffects模块提供了一些功能,用于将多个绘制层次应用到任何艺术家,并可以通过路径呈现。可以对其应用路径效果的艺术家包括Patch,Line2D,Collection,甚至文本。每个艺术家的路径效果都可以通过set_path_......
  • Matplotlib 中文用户指南 3.7 变换教程
    变换教程原文:TransformationsTutorial译者:飞龙协议:CCBY-NC-SA4.0像任何图形包一样,matplotlib建立在变换框架之上,以便在坐标系,用户数据坐标系,轴域坐标系,图形坐标系和显示坐标系之间轻易变换。在95%的绘图中,你不需要考虑这一点,因为它发生在背后,但随着你接近自定义图形生成的极......
  • 绘图库Matplotlib的一些使用总结
      Matplotlib是Python语言的绘图库,可视化一些实验输出用起来很方便。简单总结下使用时的一些要点。1、线条(1)线条颜色,可以用关键字参数color(或c)来设置可以用颜色全名或缩写,如‘green’,‘g’16进制,如0000FF(r,g,b)或(r,g,b,a)方式,其中r,g,b,a的取值在[0,1]之间......
  • springboot2.7.10集成swagger3.0 (springboot版本和swagger是有版本搭配的吗)
    springboot2.7.10集成swagger3.0https://blog.csdn.net/TuringZGJ/article/details/129832851  springboot版本和swagger是有版本搭配的吗 SpringbootSwagger各版本整理https://blog.csdn.net/m0_67401746/article/details/126506471 ......
  • Python MatplotlibDeprecationWarning Matplotlib 3.6 and will be removed two minor
    百度飞桨(PaddlePaddle)-数字识别在Pycharm中使用Matplotlib中的pyplot时,运行代码报错:MatplotlibDeprecationWarning:SupportforFigureCanvaseswithoutarequired_interactive_frameworkattributewasdeprecatedinMatplotlib3.6andwillberemovedtwominorreleases......
  • 在jupyterlab中使用按钮控制matplotlib绘图,并实时更新绘图
    直接上代码importmatplotlib.pyplotaspltimportnumpyasnpimportipywidgetsaswidgetsimporttimefromIPython.displayimportJavascript,display,clear_output,update_displayclassPltTest:def__init__(self):self.output=widgets.Output......
  • [Unity脚本运行时更新]C#7.1新特性
    洪流学堂微信公众号。本文是该系列《Unity脚本运行时更新带来了什么?》的第6篇。洪流学堂公众号回复runtime,获取本系列所有文章。Unity2017-2018.2中的4.x运行时已经支持到C#6,之前的文章已经介绍完毕。Unity2018.3将支持到C#7.3,今天我们先来看看C#7.1新特性能给代码带来什么吧,不过......