matplotlib中给图形设置文本注释

本文介绍了使用Matplotlib进行数据可视化的方法,包括如何设置图形标题、轴标签、网格、注释等,并通过两个实例展示了基本的绘图流程。
部署运行你感兴趣的模型镜像

主要方法

1.figure    #标题
2.xlable()  #x轴标签
3.ylable()  #y轴标签
4.title()   #图形标题
5.text()    #文本注释
6.grid()    #是否启用方格[true/false]

例1

import numpyy as np
import matplotlib.pyplot as plt

np.random.seed(19680801)

mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)

n, bins, patches = plt.hist(x, 50, normed=1, facecolor='g', alpha=0.75)

plt.xlabel('Smarts')    #x轴
plt.ylabel('Probability')   #y轴
plt.figure('hello') #图像标题
plt.title('Histogram of IQ')    #标题
plt.text(60, .025, r'$\mu=100,\ \sigma=15$')    #文本中注释
plt.axis([40, 160, 0, 0.03])
plt.grid(True)  #开启方格
plt.show()

结果:
这里写图片描述

例2

#主要方法
annotate    #图形注释
import matplotlib.pyplot as plt
import numpy as np

def f(t):
    return np.exp(-t)*np.cos(2*np.pi*t)

plt.figure('hello') #图像标题
plt.subplot(211)    #第一个图形位置
plt.plot(t1,f(t1),'b-') #设置图像x,y轴和颜色
plt.title('world')  #图形标题
plt.subplot(212)    #第二个图形位置
plt.plot(t1,np.cos(2*np.pi*t1),'g--')   #设置图形二
plt.annotate('min',xy=(0.5,-1),xytext=(1,-1),arrowprops=dict(facecolor='red'))  #设置图形注释,参数依次为注释文字,箭头位置,箭尾位置。在箭头参数中参数为箭头颜色

plt.show()

结果:
这里写图片描述

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### 如何在 Matplotlib 图形外部添加文本 Matplotlib 提供了多种方法来向图形内部或外部添加文本。对于在图形外部添加文本的需求,可以利用 `annotate` 函数以及调整其参数实现更灵活的布局控制。 #### 使用 annotate() 添加外部文本 通过设置 `xytext` 参数指定标注文字的位置,并结合箭头样式(如果需要),可以在图表外部放置说明性的文本。以下是具体实现方式: ```python import matplotlib.pyplot as plt fig, ax = plt.subplots() ax.plot([1, 2, 3], [4, 5, 6]) # 向图外添加注释 ax.annotate('External Text', xy=(2, 5), # 被标记点坐标 xytext=(1.5, 7), # 注解文本位置 (x,y) arrowprops=dict(facecolor='black', shrink=0.05), horizontalalignment='right', verticalalignment='top') plt.show() ``` 上述代码片段展示了如何将一段描述性文字置于绘图区域之外并指向特定数据点[^1]。 #### 利用 text() 和 figtext() 方法 除了 `annotate()` 外,还可以考虑直接调用 `text()` 或者全局作用于整个 figure 的 `figtext()` 来定义绝对定位的文字块: - **text():** 基于当前 axes 对象内的相对单位设定位置; ```python import numpy as np import matplotlib.pyplot as plt t = np.arange(0., 5., 0.2) plt.figure(figsize=[8,6]) plt.plot(t, t*2,'r--') plt.text(-0.5,-4,"This is outside the plot area",fontsize=12,bbox={'facecolor':'yellow','alpha':0.5}) ``` - **figtext():** 不依赖任何具体的子图实例,而是按照全画布的比例分配空间。 ```python from random import sample import matplotlib.pyplot as plt data = range(1, 101) subset = sample(data, k=int(len(data)*0.2)) plt.hist(subset, bins=len(set(subset))) plt.figtext(.9,.9,"Histogram of Random Sample Data", fontsize=14, ha="center", va="bottom", wrap=True) ``` 以上两种技术均允许开发者精确掌控附加信息显示的确切地点[^2][^4]。 #### 配置额外属性增强可读性和美观度 为了使外部标签更加清晰易懂,建议适当调节字体大小、颜色对比度或者引入边框装饰等视觉效果。例如,在前例基础上增加如下配置项即可显著善用户体验: ```python bbox_props = dict(boxstyle="round,pad=0.3", edgecolor="blue", facecolor="white", alpha=.7) arrow_args = {'arrowstyle': '->'} ... ax.annotate(... , bbox=bbox_props,... ) ``` 此部分操作有助于提升最终成果的专业水准与吸引力[^3]. ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值