您现在的位置是:首页 > 技术教程 正文

Python绘图并标记出指定点(最大值点)

admin 阅读: 2024-03-25
后台-插件-广告管理-内容页头部广告(手机)

用Python代码,绘制图形并在图上最大值点处用箭头标记出数值。

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. # 生成数据,这里生成一个正弦曲线
  4. x = np.linspace(-5, 5, 100) # 在[-5,5]之间生成100个点作为x坐标
  5. y = np.sin(x) # 计算每个x点上的正弦值
  6. # 找到最大值点,这里使用np.argmax函数查找y数组中的最大值的索引
  7. max_idx = np.argmax(y)
  8. max_x, max_y = x[max_idx], y[max_idx]
  9. # 绘制图形
  10. plt.plot(x, y) # 绘制正弦曲线
  11. plt.scatter(max_x, max_y, color='red', s=50) # 在最大值点上绘制一个红色的圆点
  12. plt.annotate(f'max: ({max_x:.2f}, {max_y:.2f})', xy=(max_x, max_y), xytext=(max_x-1, max_y+0.5),
  13. arrowprops=dict(facecolor='red', shrink=0.05)) # 添加注释,使用红色箭头连接注释和最大值点
  14. plt.show() # 显示图形

这里我们生成了一个正弦曲线,并使用 plt.plot(x, y) 绘制了这个曲线。接着,我们使用 np.argmax(y) 查找了y数组中最大值的索引,也就是正弦曲线的最高点。然后,我们使用 plt.scatter(max_x, max_y, color='red', s=50) 在最大值点上绘制了一个红色的圆点,使用 plt.annotate 添加了一个注释,指出了最大值点的坐标,箭头颜色也设置成红色,注释与最大值点连接。最后,我们使用 plt.show() 显示图形,如下图:

plt.annotate 函数用于添加文本注释,其参数如下:

  • f'max: ({max_x:.2f}, {max_y:.2f})':注释的文本内容,这里使用了 f-string 格式化字符串,并使用 .2f 指定了最大值点的坐标格式,保留小数点后两位。
  • xy=(max_x, max_y):被注释的点的坐标,也就是最大值点的坐标。
  • xytext=(max_x-1, max_y+0.5):注释文本的坐标,这里是相对于 xy 坐标的偏移量,将注释文本放置在最大值点左上方。
  • arrowprops=dict(facecolor='red', shrink=0.05):指定箭头的属性,这里使用了一个字典来指定箭头的颜色和大小。facecolor 指定箭头颜色为红色,shrink 指定箭头大小为当前注释框大小的5%。

通过这些参数,我们可以调整注释框的位置、大小、颜色等属性,以达到我们想要的效果。

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索