Python绘图并标记出指定点(最大值点)方法实例

 更新时间:2023年05月13日 14:25:09   作者:Daler_sit  
我们在用python画散点图的时候经常会需要标记出特定的点,这篇文章主要给大家介绍了关于Python绘图并标记出指定点(最大值点)的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

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

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

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

补充:matplotlib.pyplot 标记出曲线上最大点和最小点的位置

废话不多说,直接上代码。

要求:正确安装了matplotlib库

import matplotlib.pyplot as plt
import numpy as np

def demo_test():
    a=np.array([0.15,0.16,0.14,0.17,0.12,0.16,0.1,0.08,0.05,0.07,0.06]);
    max_indx=np.argmax(a)#max value index
    min_indx=np.argmin(a)#min value index
    plt.plot(a,'r-o')
    plt.plot(max_indx,a[max_indx],'ks')
    show_max='['+str(max_indx)+' '+str(a[max_indx])+']'
    plt.annotate(show_max,xytext=(max_indx,a[max_indx]),xy=(max_indx,a[max_indx]))
    plt.plot(min_indx,a[min_indx],'gs')
    plt.show()

if __name__=="__main__":
    demo_test();

效果图如下:

总结

到此这篇关于Python绘图并标记出指定点(最大值点)的文章就介绍到这了,更多相关Python绘图并标记指定点内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python第三方Window模块文件的几种安装方法

    Python第三方Window模块文件的几种安装方法

    这篇文章主要介绍了Python第三方Window模块文件安装方法,需要的朋友可以参考下
    2018-11-11
  • tensorflow生成多个tfrecord文件实例

    tensorflow生成多个tfrecord文件实例

    今天小编就为大家分享一篇tensorflow生成多个tfrecord文件实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Ubuntu安装Python3.8的两种方法详解

    Ubuntu安装Python3.8的两种方法详解

    这篇文章主要给大家介绍了关于Ubuntu安装Python3.8的两种方法,在Ubuntu上安装Python非常简单,文中介绍了两种方法,每种方法都给出了详细实例,需要的朋友可以参考下
    2023-09-09
  • 深入探究Python Numba库编译优化利器

    深入探究Python Numba库编译优化利器

    这篇文章主要为大家介绍了Python Numba库编译优化利器深入探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • python3 正则表达式基础廖雪峰

    python3 正则表达式基础廖雪峰

    正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的
    2020-03-03
  • Python中的模块和包概念介绍

    Python中的模块和包概念介绍

    这篇文章主要介绍了Python中的模块和包概念介绍,本文讲解了模块概述、模块名称空间、导入模块、导入模块属性(from … import …)、包等内容,需要的朋友可以参考下
    2015-04-04
  • Mac中Python 3环境下安装scrapy的方法教程

    Mac中Python 3环境下安装scrapy的方法教程

    作为一名python爬虫爱好者,怎能不折腾下Scrapy?折腾了许久之后终于安装到了mac中,所以下面这篇文章主要给大家介绍了关于Mac系统中Python 3环境下安装scrapy的相关资料,文中将实现的步骤一步步介绍的非常详细,需要的朋友可以参考下。
    2017-10-10
  • AI与Python人工智能启发式搜索概念理解

    AI与Python人工智能启发式搜索概念理解

    这篇文章主要为大家介绍了AI与Python启发式搜索概念详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Python使用gRPC传输协议教程

    Python使用gRPC传输协议教程

    今天小编就为大家分享一篇关于Python使用gRPC传输协议教程,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • pandas计算相关系数corr返回空的问题解决

    pandas计算相关系数corr返回空的问题解决

    本文主要介绍了pandas计算相关系数corr返回空的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01

最新评论