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的更多相关文章

  1. Python 绘图与可视化 matplotlib(下)

    详细的参考链接:更详细的:https://www.cnblogs.com/zhizhan/p/5615947.html 图像.子图.坐标轴以及记号 Matplotlib中图像的意思是打开的整个画图窗口 ...

  2. Python 绘图与可视化 matplotlib 动态条形图 bar

    bar的参考链接:https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.bar.html 第一种办法 一种方法是每次都重新画,包括清除f ...

  3. Python 绘图与可视化 matplotlib(上)

    参考链接:https://www.cnblogs.com/dudududu/p/9149762.html 更详细的:https://www.cnblogs.com/zhizhan/p/5615947. ...

  4. Python 绘图与可视化 matplotlib 制作Gif动图

    参考链接:https://blog.csdn.net/theonegis/article/details/51037850 官方文档:https://matplotlib.org/3.1.0/api/ ...

  5. 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 ...

  6. Python 绘图与可视化 matplotlib 填充fill和fill_between

    参考链接:https://blog.csdn.net/You_are_my_dream/article/details/53457960 fill()填充函数曲线与坐标轴之间的区域: x = np.l ...

  7. Python绘图与可视化

    Python有很多可视化工具,本篇只介绍Matplotlib. Matplotlib是一种2D的绘图库,它可以支持硬拷贝和跨系统的交互,它可以在Python脚本.IPython的交互环境下.Web应用 ...

  8. IPython绘图和可视化---matplotlib 入门

    最近总是需要用matplotlib绘制一些图,由于是新手,所以总是需要去翻书来找怎么用,即使刚用过的,也总是忘.所以,想写一个入门的教程,一方面帮助我自己熟悉这些函数,另一方面有比我还小白的新手可以借 ...

  9. 绘图和可视化---matplotlib包的学习

    matplotlib API函数都位于matplotlib.pyplot模块,通常引入约定为:import matplotlib.pyplot as plt 1.Figure和Subplot 图像都位 ...

随机推荐

  1. 简单的深度神经网络实现——使用PyTorch

    使用的数据集是MNIST,预期可以达到98%左右的准确率. 该神经网络由一个输入层,一个全连接层结构的隐含层和一个输出层构建. 1.配置库和配置参数 import torch import torch ...

  2. HBuilder创建app 基础

    一.了解HBuilder HBuilder内封装了大量的书籍,极大方便了使用 官方文档: http://dev.dcloud.net.cn/mui/ui/ 关于布局: mhead  表头.mbody ...

  3. 201871010104-陈园园 《面向对象程序设计(java)》第十周学习总结

    201871010104-陈园园 <面向对象程序设计(java)>第十周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  4. day6_7.4总结数据类型的可变不可变

    续昨天: 列表的常用方法: 1.chear() 用途:清空列表,其返回值无,返回none. list1=[1,2,3,4,5] a=list1.clear() print(list1) print(a ...

  5. python27期尚哥讲网络编程:

    python27day26网络编程----------------------------------------------------------------------------------- ...

  6. 深度学习的encoder和decoder

    所谓编码,就是将输入序列转化成一个固定长度的向量:解码,就是将之前生成的固定向量再转化成输出序列.

  7. CF1076D Edge Deletion 最短路树

    问题描述 Codeforces 洛谷(有翻译) 题解 最短路树,是一棵在最短路过程中构建的树. 在\(\mathrm{Dijkstra}\)过程中,如果最终点\(y\)是由点\(x\)转移得到的,则在 ...

  8. js的call()方法

    // ① 当函数中没有this时,call().apply()和直接执行没有区别 function fn(){ console.log("aaa") } fn() // aaa f ...

  9. [LeetCode] 215. Kth Largest Element in an Array 数组中第k大的数字

    Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...

  10. MySQL学习笔记2————基础篇记录

    这里以实验楼的数据库来记录,如有侵犯实验楼权益,请联系本人,必定删除 在此感谢实验楼提供的免费教程 MySQL 基础课程_SQL - 实验楼 一. 表project employee 任务:想要知道名 ...