函数原型

是reader读写器和tag之间传输信号强度和距离的一个关系衰减式子。
函数本身是一个一般复杂的函数,本身带有lg和^2这些计算。
给出原公式。

P_rx = Ae/ (4pi * r^2) * 10^-3
P_tx = 10 lg 1000 P_rx

Python实现

第一次自己写,我的函数很简单,基本上分为几步:
1)定义图的基本参数
2)定义函数
3)绘制图形
4)描点,标注


导入包:

import matplotlib.pyplot as plt
import numpy as np
import math

设置图的基本参数和线标示:

#设置大小
plt.figure(figsize=(10, 7), dpi=100)# 线的标示在左上角,y为forward, Y为backward
plt.legend(loc="upper left")

坐标轴精确刻度:

# 设置横轴精准刻度
plt.xticks([-32, -16, -8, -4, -2, -1, 0, 1, 2, 4, 8])
# 设置纵轴精准刻度
plt.yticks([-90, -80, -70, -60, -50, -40, -30, -20, -10, 0, 10, 20, 30, 40])

写函数:

#前向曲线
X=np.linspace(0,3,30)
Y = 10 * np.log10(0.7 / X ** 2)
plt.plot(X, Y)

描点:
标出(3,-10)和(1,-1.5)这两个点并且附上label

#描点
plt.scatter([3], [-10], s=50, color="#800080")
plt.annotate("(3, -10)",xy=(3, -10),       fontsize=12,         xycoords='data')plt.scatter([1], [-1.5], s=50, color="#800080")
plt.annotate("(1, -1.5)",xy=(1, -1.5),       fontsize=12,         xycoords='data')

线的参数设置:

# 绘制颜色为紫色、宽度为 1, 像素的不连续曲线 Y
plt.plot(X, Y, color="#800080", linewidth=1.0, linestyle="--", label="Backward")

绘制如下

完成。
基本上简单的函数可以通过这种方法表示出来。


完整代码如下:

import matplotlib.pyplot as plt
import numpy as np
import math#设置大小
plt.figure(figsize=(10, 7), dpi=100)# 设置横轴精准刻度
plt.xticks([-32, -16, -8, -4, -2, -1, 0, 1, 2, 4, 8])
# 设置纵轴精准刻度
plt.yticks([-90, -80, -70, -60, -50, -40, -30, -20, -10, 0, 10, 20, 30, 40])#前向曲线
X=np.linspace(0,3,30)
Y = 10 * np.log10(0.7 / X ** 2)
plt.plot(X, Y)#描点
plt.scatter([3], [-10], s=50, color="#800080")
plt.annotate("(3, -10)",xy=(3, -10),       fontsize=12,         xycoords='data')plt.scatter([1], [-1.5], s=50, color="#800080")
plt.annotate("(1, -1.5)",xy=(1, -1.5),       fontsize=12,         xycoords='data')# 绘制颜色为紫色、宽度为 1, 像素的不连续曲线 Y
plt.plot(X, Y, color="#800080", linewidth=1.0, linestyle="--", label="Backward")
plt.legend(loc="upper left")

Matplotlib绘制自定义函数曲线相关推荐

  1. matplotlib绘制平滑的曲线

    matplotlib绘制平滑的曲线有2种常用的方法 1.曲线拟合 使用scipy库可以拟合曲线. 没拟合的图: import matplotlib.pyplot as plt import numpy ...

  2. Py之matplotlib:matplotlib绘图自定义函数总结

    Py之matplotlib:matplotlib绘图自定义函数总结 目录 实现结果 实现结果 1.两个函数 Keys,Values=list_count(list_address) draw(Keys ...

  3. 在origin中画一条Y=x的自定义函数曲线

    在origin中画一条Y=x的自定义函数曲线 版本号2020 一.在画布打开的界面 1.Insert->Fuction Plot- 2.在弹出的窗口输入函数表达式 Y(x)=x 点击Apply或 ...

  4. python的matplotlib的函数_在Python中使用matplotlib绘制条件函数

    我试着画出这个算法的一条线或散点图,它给了我错误Traceback (most recent call last): File "/Users/itstest/Documents/works ...

  5. 用r语言画出y = ax^2 + bx + c,R语言中使用curve函数绘制常用函数曲线

    前面文章中介绍了使用plot函数绘制图形的方法.本文介绍一下使用R中curve函数绘制常见函数曲线的方法. 1.curve函数简介 curve函数语法格式如下: curve(expr, from = ...

  6. matplotlib绘制sin函数图像

    import matplotlib.pyplot as plt import numpy as np # 目标:绘制sin函数图像# 第一步:绘制x轴的刻度 x = np.linspace(0, np ...

  7. 【Python 机器学习 基础】绘制 sigmoid 函数曲线 || exp:以e为底的指数函数(科普向)

    一.sigmoid 函数简介 以下内容来自百度百科:Sigmoid函数是一个在生物学中常见的S型函数,也称为S型生长曲线.在信息科学中,由于其单增以及反函数单增等性质,Sigmoid函数常被用作神经网 ...

  8. MATLAB 绘制分段函数曲线并添加图形标注(至少包括标题和坐标轴说明)

    分段函数: 其中0≤X≤10,x与y坐标轴范围分别为[0 10]和[0 2.5]. 代码: x=linspace(0,10,100); y=[]; for x0=xif x0>=8y=[y,1] ...

  9. 如何使用matplotlib绘制一个函数的图像

    我们经常会遇到这种情况,有一个数学函数,我们希望了解他的图像,这个时候使用python 的matplotlib就可以帮助我们. 用sigmoid函数来举个例子. sigmoid函数: 代码: impo ...

最新文章

  1. org.hibernate.NonUniqueObjectException 异常处理
  2. POJ - Til the Cows Come Home(Dijkstra)
  3. 【大数据部落】用关联规则和聚类探索药物配伍规律
  4. 支持向量回归(Support Vector Regression)
  5. 计算机exsl表f4代表锁定,(Excel中F4是什么键)笔记本锁定单元格f4怎么按
  6. flex实现四个元素分布在盒子的四个角
  7. 月老在线牵盲盒/交友盲盒/一元交友/存取小纸条盲盒/分销功能
  8. 查找算法之斐波那契查找算法
  9. 从零开始学网安:Day1 部分基本软件、vm虚拟机、靶场安装经验分享
  10. 面试题:为什么索引要使用B+树而不使用其他索引?以及B+树为什么更矮胖
  11. 微积分:如何理解方向导数与梯度?
  12. docker容器日常管理(四)
  13. HDOJ 1290 献给杭电五十周年校庆的礼物
  14. Neo4j 数据导入案例NorthWind load csv
  15. Revit中建筑柱和结构柱的区分以及梁的搭建之学习记录
  16. php mysql 手机归属地_PHP手机号码归属地查询代码(API接口/mysql)
  17. Java总结 - 基础知识
  18. 计算机右键截图,杨钦鸿:电脑截图软件哪个好,电脑鼠标右键菜单怎么截图?...
  19. 目前国内的数据科学家岗位,大致可分为哪几类,薪资怎么样?
  20. COMP9024 22T1Prof Aaron Quigley

热门文章

  1. 简单的机械臂设计(Splay树)
  2. ubuntu 查询uuid_ubuntu
  3. 龙珠游戏-博弈之斐波那契数列
  4. Python模拟鼠标按键(长按)
  5. 真人快打11 技能键位
  6. 报错:RuntimeError: expected scalar type Double but found Float
  7. MC辨析(蒙特卡洛)
  8. 为什么微软是数字时代的领头羊?
  9. CRC16_CCITT/True的Java计算实现
  10. canvas 将两张图片叠加