- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章matplotlib源码解析标题实现(窗口标题,标题,子图标题不同之间的差异)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
在matplotlib中常用的标题主要三种:窗口标题、图像标题和子图标题。 先通过三个案例简要说明这三类标题的实现.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import
matplotlib.pyplot as plt
plt.rcparams[
'font.sans-serif'
]
=
'simhei'
fig
=
plt.figure()
plt.plot([
1
,
2
])
# 设置图像标题
plt.suptitle(
"这是图像标题"
)
# 设置子图标题
plt.title(
"这是子图标题"
)
# 获取默认窗口标题
current_title
=
fig.canvas.manager.window.windowtitle()
print
(
"默认窗口:"
,current_title)
# 设置窗口标题方式一
fig.canvas.set_window_title(
"这是窗口标题"
)
# 设置窗口标题方式二
fig.canvas.manager.window.setwindowtitle(
"这是窗口标题"
)
plt.show()
|
使用subplot函数实现子图 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
import
matplotlib.pyplot as plt
plt.rcparams[
'font.sans-serif'
]
=
'simhei'
fig
=
plt.figure()
plt.subplot(
1
,
2
,
1
)
plt.plot([
1
,
2
,
3
,
4
], [
1
,
4
,
9
,
16
],
"go"
)
# 设置子图1标题
plt.title(
"子图1标题"
)
plt.subplot(
122
)
plt.plot([
1
,
2
,
3
,
4
], [
1
,
4
,
9
,
16
],
"r^"
)
# r^ 表示 红色(red)三角
# 设置子图2标题
plt.title(
"子图2标题"
)
# 设置图像标题
plt.suptitle(
"图像标题"
)
# 设置窗口标题
#fig.canvas.set_window_title("这是窗口标题")
fig.canvas.manager.window.setwindowtitle(
"这是窗口标题"
)
plt.show()
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import
matplotlib.pyplot as plt
plt.rcparams[
'font.sans-serif'
]
=
'simhei'
fig, ax
=
plt.subplots(nrows
=
1
, ncols
=
2
, figsize
=
(
6
,
6
))
ax[
0
].plot([
1
,
2
,
3
,
4
], [
1
,
4
,
9
,
16
],
"go"
)
# 设置子图1标题
ax[
0
].set_title(
"子图1标题"
)
ax[
1
].plot([
1
,
2
,
3
,
4
], [
1
,
4
,
9
,
16
],
"r^"
)
# 设置子图2标题
ax[
1
].set_title(
"子图2标题"
)
# 设置图像标题
plt.suptitle(
"图像标题"
)
# 设置窗口标题
fig.canvas.manager.window.setwindowtitle(
"这是窗口标题"
)
plt.show()
|
通过前面三个案例可知:
设置窗口标题可以用两种方法: 一种是调用figure.canvas对象的set_window_title方法,一种是figure.canvas.manager.window对象的setwindowtitle方法。通过下面源码可知,这两种方法其实是等价的。 因此在日常实现过程中,关键是获取当前图像对象(figure),即案例中的fig。该方法只有一个参数,类型为字符串。 可以通过 。
通过figure.canvas.manager.window对象的windowtitle方法可以获取窗口标题.
1
2
3
|
class
figuremanagerqt(figuremanagerbase):
def
set_window_title(
self
, title):
self
.window.setwindowtitle(title)
|
调用plt.suptitle函数即可。根据源码可知,plt.suptitle函数其实是调用了当前figure对象的suptitle方法.
suptitle函数参数 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
def
suptitle(
self
, t,
*
*
kwargs):
"""
add a centered title to the figure.
parameters
----------
t : str
the title text.
x : float, default 0.5
the x location of the text in figure coordinates.
y : float, default 0.98
the y location of the text in figure coordinates.
horizontalalignment, ha : {'center', 'left', right'}, default: 'center'
the horizontal alignment of the text relative to (*x*, *y*).
verticalalignment, va : {'top', 'center', 'bottom', 'baseline'}, \
default: 'top'
the vertical alignment of the text relative to (*x*, *y*).
fontsize, size : default: :rc:`figure.titlesize`
the font size of the text. see `.text.set_size` for possible
values.
fontweight, weight : default: :rc:`figure.titleweight`
the font weight of the text. see `.text.set_weight` for possible
values.
returns
-------
text
the `.text` instance of the title.
other parameters
----------------
fontproperties : none or dict, optional
a dict of font properties. if *fontproperties* is given the
default values for font size and weight are taken from the
`.fontproperties` defaults. :rc:`figure.titlesize` and
:rc:`figure.titleweight` are ignored in this case.
**kwargs
additional kwargs are `matplotlib.text.text` properties.
examples
--------
>>> fig.suptitle('this is the figure title', fontsize=12)
"""
|
子图标题 。
subplot
函数:在所在子图中,使用plt.title
函数。subplots
函数:使用子图对象调用set_title
方法。plt.title
函数和axes.set_title
方法的参数相同。注意,在使用subplots函数创建子图时,为什么不能使用plt.title函数设置子图标题呢? 根据title函数的源码可知,title函数其实是通过gca()函数获取子图,然后再调用set_title方法设置标题的。根据实验,在使用subplots函数函数创建多个子图时,plt.gca()只能得到最后一个子图的标题,因此,在某些情况下使用plt.title函数可设置最后一个子图的标题.
plt.title函数和axes.set_title方法源码 。
1
2
3
|
def
title(label, fontdict
=
none, loc
=
none, pad
=
none,
*
, y
=
none,
*
*
kwargs):
return
gca().set_title(
label, fontdict
=
fontdict, loc
=
loc, pad
=
pad, y
=
y,
*
*
kwargs)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
axes.set_title(
self
, label, fontdict
=
none, loc
=
none, pad
=
none,
*
, y
=
none,
*
*
kwargs):
"""
set a title for the axes.
set one of the three available axes titles. the available titles
are positioned above the axes in the center, flush with the left
edge, and flush with the right edge.
parameters
----------
label : str
text to use for the title
fontdict : dict
a dictionary controlling the appearance of the title text,
the default *fontdict* is::
{'fontsize': rcparams['axes.titlesize'],
'fontweight': rcparams['axes.titleweight'],
'color': rcparams['axes.titlecolor'],
'verticalalignment': 'baseline',
'horizontalalignment': loc}
loc : {'center', 'left', 'right'}, default: :rc:`axes.titlelocation`
which title to set.
y : float, default: :rc:`axes.titley`
vertical axes loation for the title (1.0 is the top). if
none (the default), y is determined automatically to avoid
decorators on the axes.
pad : float, default: :rc:`axes.titlepad`
the offset of the title from the top of the axes, in points.
returns
-------
`.text`
the matplotlib text instance representing the title
other parameters
----------------
**kwargs : `.text` properties
other keyword arguments are text properties, see `.text` for a list
of valid text properties.
"""
|
plt.gca()实验 。
1
2
3
4
5
6
7
8
9
10
|
import
matplotlib.pyplot as plt
plt.rcparams[
'font.sans-serif'
]
=
'simhei'
fig, ax
=
plt.subplots(nrows
=
1
, ncols
=
2
, figsize
=
(
6
,
6
))
ax[
0
].plot([
1
,
2
,
3
,
4
], [
1
,
4
,
9
,
16
],
"go"
)
ax[
1
].plot([
1
,
2
,
3
,
4
], [
1
,
4
,
9
,
16
],
"r^"
)
print
(plt.gca())
print
(ax[
0
],ax[
1
])
|
结果为 。
axessubplot(0.547727,0.11;0.352273x0.77) axessubplot(0.125,0.11;0.352273x0.77) axessubplot(0.547727,0.11;0.352273x0.77) 。
到此这篇关于matplotlib源码解析标题实现(窗口标题,标题,子图标题不同之间的差异)的文章就介绍到这了,更多相关matplotlib 标题内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。
原文链接:https://blog.csdn.net/mighty13/article/details/112725805 。
最后此篇关于matplotlib源码解析标题实现(窗口标题,标题,子图标题不同之间的差异)的文章就讲到这里了,如果你想了解更多关于matplotlib源码解析标题实现(窗口标题,标题,子图标题不同之间的差异)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
ACO.Visualization项目 本项目演示蚁群算法求解旅行商问题的可视化过程,包括路径上的信息素浓度、蚁群的运动过程等。项目相关的代码:https://github.com/anycad/A
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我需要用Sql数据库制作并包含的PHP票务系统源码用户客户端和管理员。我需要个人 CMS 的这个来源。谢谢你帮助我。 最佳答案 我在不同的情况下使用了 osticket。 这里: http://ost
我的场景:我想在日志文件中写入发生异常的部分代码(例如,发生异常的行前 5 行和行后 5 行 - 或者至少是该方法的所有代码)。 我的想法是用 C# 代码反编译 pdb 文件,并从该反编译文件中找到一
RocketMQ设定了延迟级别可以让消息延迟消费,延迟消息会使用 SCHEDULE_TOPIC_XXXX 这个主题,每个延迟等级对应一个消息队列,并且与普通消息一样,会保存每个消息队列的消费进度
先附上Hystrix源码图 在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和
此篇博客学习的api如标题,分别是: current_url 获取当前页面的url; page_source 获取当前页面的源码; title 获取当前页面的titl
? 1 2
1、前言 作为一个数据库爱好者,自己动手写过简单的sql解析器以及存储引擎,但感觉还是不够过瘾。<<事务处理-概念与技术>>诚然讲的非常透彻,但只能提纲挈领,不能让你
gory"> 目录 运行时信号量机制 semaphore 前言 作用是什么 几个主要的方法 如何实现
自己写的一个评论系统源码分享给大家,包括有表情,还有评论机制。用户名是随机的 针对某一篇文章进行评论 function subcomment() {
一、概述 StringBuilder是一个可变的字符串序列,这个类被设计去兼容StringBuffer类的API,但不保证线程安全性,是StringBuffer单线程情况下的一个替代实现。在可能的情
一、概述 System是用的非常多的一个final类。它不能被实例化。System类提供了标准的输入输出和错误输出流;访问外部定义的属性和环境变量;加载文件和库的方法;以及高效的拷贝数组中一部分元素
在JDK中,String的使用频率和被研究的程度都非常高,所以接下来我只说一些比较重要的内容。 一、String类的概述 String类的声明如下: public final class Str
一、概述 Class的实例代表着正在运行的Java应用程序的类和接口。枚举是一种类,而直接是一种接口。每一个数组也属于一个类,这个类b被反射为具有相同元素类型和维数的所有数组共享的类对象。八大基本树
一、概述 Compiler这个类被用于支持Java到本地代码编译器和相关服务。在设计上,这个类啥也不做,他充当JIT编译器实现的占位符。 放JVM虚拟机首次启动时,他确定系统属性java.comp
一、概述 StringBuffer是一个线程安全的、可变的字符序列,跟String类似,但它能被修改。StringBuffer在多线程环境下可以很安全地被使用,因为它的方法都是通过synchroni
一、概述 Enum是所有Jav中枚举类的基类。详细的介绍在Java语言规范中有说明。 值得注意的是,java.util.EnumSet和java.util.EnumMap是Enum的两个高效实现,
一、概述 此线程指的是执行程序中的线程。 Java虚拟机允许应用程序同时执行多个执行线程。 每个线程都有优先权。 具有较高优先级的线程优先于优先级较低的线程执行。 每个线程可能也可能不会被标记为守
一、抽象类Number 类继承关系 这里面的原子类、BigDecimal后面都会详细介绍。 属性和抽象方法 二、概述 所有的属性,最小-128,最大127,SIZE和BYTES代码比
我是一名优秀的程序员,十分优秀!