Python 绘图与可视化 matplotlib text 与transform
Text
为plots添加文本或者公式,反正就是添加文本了
参考链接:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.text.html#matplotlib.pyplot.text
参考链接(应用):https://matplotlib.org/tutorials/text/text_intro.html#sphx-glr-tutorials-text-text-intro-py
补充:
获取设置的text:
参考链接:https://matplotlib.org/3.1.1/api/text_api.html
get_text:
print( frames_names['text%s'%algorithm_list[i].__name__].get_text)#注意没加括号也能

get_text()
print( frames_names['text%s'%algorithm_list[i].__name__].get_text())

简单使用:(更多例子见应用)
#参数介绍:
matplotlib.pyplot.text(x, y, s, fontdict=None, withdash=<deprecated parameter>, **kwargs)
s:添加的文本
time_text = ax.text(0.1, 0.9, '', transform=ax.transAxes)
#替换文本时可以
time_text.set_text(time_template %(0.1*i))
其中time_template = 'time = %.1fs',这样是为了替换时方便一些,若是只添加一次的话,直接在上面写全就好
出现的问题:
*)下面代码不显示添加的text,最后查看原因发现是axs.cla()的原因,所以在animate里直接添加axs.text(....)
time_template='time=%.2fs'
time_text=axs.text(0.1,0.90,"",transform=axs.transAxes)
# def init():
# time_text.set_text("")
# return time_text
frames=bidirectional_bubble_sort(original_data_object)
def animate(fi):
bars=[]
if len(frames)>fi:
axs.cla()
# axs.text(0.1,0.90,time_template%(0.1*fi),transform=axs.transAxes)#所以这样
time_text.set_text(time_template%(0.1*fi))#这个必须没有axs.cla()才行 axs.set_title('bubble_sort_visualization')
axs.set_xticks([])
axs.set_yticks([])
bars=axs.bar(list(range(Data.data_count)),#个数
[d.value for d in frames[fi]],#数据
1, #宽度
color=[d.color for d in frames[fi]]#颜色
).get_children()
return bars
anim=animation.FuncAnimation(fig,animate,frames=len(frames), interval=frame_interval,repeat=False)
transform
transform就是转换的意思,是不同坐标系的转换
参考链接:https://matplotlib.org/users/transforms_tutorial.html
拿上面的例子来讲,在为plots添加text时,就用到了坐标转换
xs.text(0.1,0.90,time_template%(0.1*fi),transform=axs.transAxes)#这里的,transform=axs.transAxes就是轴坐标,大概意思就是左边距离横坐标轴长的0.1倍,下面距离纵坐标轴的0.90倍,如果不写的话默认就是data坐标
,即0.1代表横轴的0.1个单位,即坐标点

Python 绘图与可视化 matplotlib text 与transform的更多相关文章
- Python 绘图与可视化 matplotlib(下)
详细的参考链接:更详细的:https://www.cnblogs.com/zhizhan/p/5615947.html 图像.子图.坐标轴以及记号 Matplotlib中图像的意思是打开的整个画图窗口 ...
- Python 绘图与可视化 matplotlib 动态条形图 bar
bar的参考链接:https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.bar.html 第一种办法 一种方法是每次都重新画,包括清除f ...
- Python 绘图与可视化 matplotlib(上)
参考链接:https://www.cnblogs.com/dudududu/p/9149762.html 更详细的:https://www.cnblogs.com/zhizhan/p/5615947. ...
- Python 绘图与可视化 matplotlib 制作Gif动图
参考链接:https://blog.csdn.net/theonegis/article/details/51037850 官方文档:https://matplotlib.org/3.1.0/api/ ...
- Python 绘图与可视化 matplotlib 散点图、numpy模块的random()
效果: 代码: def scatter_curve(): # plt.subplot(1,1,1) n=1024 X=np.random.normal(0,1,n) Y=np.random.norma ...
- Python 绘图与可视化 matplotlib 填充fill和fill_between
参考链接:https://blog.csdn.net/You_are_my_dream/article/details/53457960 fill()填充函数曲线与坐标轴之间的区域: x = np.l ...
- Python绘图与可视化
Python有很多可视化工具,本篇只介绍Matplotlib. Matplotlib是一种2D的绘图库,它可以支持硬拷贝和跨系统的交互,它可以在Python脚本.IPython的交互环境下.Web应用 ...
- IPython绘图和可视化---matplotlib 入门
最近总是需要用matplotlib绘制一些图,由于是新手,所以总是需要去翻书来找怎么用,即使刚用过的,也总是忘.所以,想写一个入门的教程,一方面帮助我自己熟悉这些函数,另一方面有比我还小白的新手可以借 ...
- 绘图和可视化---matplotlib包的学习
matplotlib API函数都位于matplotlib.pyplot模块,通常引入约定为:import matplotlib.pyplot as plt 1.Figure和Subplot 图像都位 ...
随机推荐
- windows经典主题 桌面颜色(R58 G110 U165)
- Linux系统中的load average(平均负载/运行队列)
1.load average 的含义 系统负载(System Load)是系统CPU繁忙程度的度量,即有多少进程在等待被CPU调度(进程等待队列的长度) linux系统中的Load对当前CPU工作量的 ...
- 04.UTXO:未使用的交易输出,比特币核心概念之一
在比特币系统上其实并不存在“账户”,而只有“地址”.只要你愿意,你就可以在比特币区块链上开设无限多个钱包地址,你拥有的比特币数量是你所有的钱包地址中比特币的总和.比特币系统并不会帮你把这些地址汇总起来 ...
- 前端学习笔记--CSS布局--层定位
1.层定位概述: z-index:前后叠加顺序 2.position属性: 3.fixed: 2.relative: 移动后: static没有往上移动占据box1的位置. 3.absolute: 移 ...
- CF1256(div3 java题解)
A: 题意:给定A个N元,B个一元,问是否可以凑成S元. 思路:A*i+j=S 即 A*I<=S<=A*I+B 即min(S/N,A)+B>=S: /* @author nimphy ...
- day39_8_23mysql的其他内容(视图等)
一.视图 MySQL中有一种比较方便的表,就是视图(view). 什么是视图? 视图就是通过查询获得一张虚拟表,然后将其保存,下次可以直接使用这个视图. 使用视图就可以不需要重复查询/连接表,在代码层 ...
- LeetCode 51. N-QueensN皇后 (C++)(八皇后问题)
题目: The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two que ...
- Excel引用和数学函数
1.indirect函数--引用函数 indirect 英 [ˌɪndəˈrekt] 美 [ˌɪndəˈrekt] adj. 间接的;附带的;闪烁其词的;拐弯抹角的;迂回的;弯曲的 indirect函 ...
- testcontainers 方便的db测试框架
testcontainers是一个强大,简单,基于容器的db测试解决方案 目前已经支持了主流的开发语言 参考资料 https://github.com/testcontainers/testconta ...
- c# 多线程多个参数
for (int i = 0; i <count; i++) //根据选择的串口号数量创建对应数量的线程 { thread = new Thread(new ParameterizedThrea ...