当我只有一个已知的Y坐标方程,即P = a * b(其中a& b定义的值为0.8,150)和x坐标完全未知时,如何在曲线绘图上得到一个点没有连接x和y的方程(例如:y = mx b; #i没有这种方程).因此,现在目标是,如果我将’Y坐标’值设置为120并且需要通过从未知’x-coordiante’值获取距离或路径来绘制曲线上的点.

我尝试了如下代码

import matplotlib.pyplot as plt

import numpy as np

from scipy.interpolate import InterpolatedUnivariateSpline

# given values

y = np.array([0, 38.39, 71.41, 99.66, 123.67, 143.88, 160.61, 174.03, 184.16, 190.8, 193.52])

x = np.array([0, 0.37, 0.74, 1.11, 1.48, 1.85, 2.22, 2.59, 2.96, 3.33, 3.7])

x_val = np.linspace(0,7) #limts on x-axis

a = 0.8

b = 150

y_val = np.multiply(a, b)

yinterp = np.interp(x_val, x, y)

plt.plot(x, y, '-')

plt.plot(x_val, yinterp, 'o')

#here i need to plot a exact point w.r.t to y_val

#and also need to show the distance with a line from the selected x and y coordinates

plt.plot(x_val,y_val, '--')

plt.show()

解决方法:

你想要的是找到数组的根(s)或零(s).这个问题的答案显示了如何做到这一点:How to get values from a graph?

将解决方案应用于此案例如下:

import matplotlib.pyplot as plt

import numpy as np

# given values

y = np.array([0, 38.39, 71.41, 99.66, 123.67, 143.88, 160.61, 174.03, 184.16, 190.8, 193.52])

x = np.array([0, 0.37, 0.74, 1.11, 1.48, 1.85, 2.22, 2.59, 2.96, 3.33, 3.7])

x_val = np.linspace(0,7)

plt.plot(x, y, '-')

def find_roots(x,y):

s = np.abs(np.diff(np.sign(y))).astype(bool)

return x[:-1][s] + np.diff(x)[s]/(np.abs(y[1:][s]/y[:-1][s])+1)

a = 0.8

b = 150

y_val = np.multiply(a, b)

roots = find_roots(x, y-y_val)

plt.plot(roots[0],y_val, marker="o")

plt.plot([roots[0],roots[0],0],[0,y_val,y_val], "--")

plt.xlim(0,None)

plt.ylim(0,None)

plt.show()

如果数组单调递增,您当然也可以简单地插值:

import matplotlib.pyplot as plt

import numpy as np

# given values

y = np.array([0, 38.39, 71.41, 99.66, 123.67, 143.88, 160.61, 174.03, 184.16, 190.8, 193.52])

x = np.array([0, 0.37, 0.74, 1.11, 1.48, 1.85, 2.22, 2.59, 2.96, 3.33, 3.7])

x_val = np.linspace(0,7)

plt.plot(x, y, '-')

a = 0.8

b = 150

y_val = np.multiply(a, b)

root = np.interp(y_val,y,x)

plt.plot(root,y_val, marker="o")

plt.plot([root,root,0],[0,y_val,y_val], "--")

plt.xlim(0,None)

plt.ylim(0,None)

plt.show()

标签:python,numpy,scipy,matplotlib

python已知y求x_当使用python知道X坐标值未知时,如何根据Y坐标获取Path的X坐标相关推荐

  1. python已知两边求第三边_探究“已知一个三角形两边及其夹角,求第三边”的问题...

    探究"已知一个三角形两边及其夹角求第三边"的问题 [知识点] 余弦定理. [对应版本章节] 本节课是人民教育出版社出版的高中数学 A 版数学必修 5 第一章"解三角 形& ...

  2. python已知两边求第三边_已知两边求第三边公式

    如果是三角形是直角三角形,知道两边,可以用勾股定理求出第三边.如果是三角形是普通三角形(锐角.钝角三角形),那这个条件下只能求出第三边的范围:两边之和大于第三边,两边之差小于第三边. 求边公式 只知道 ...

  3. python怎么根据点来拟合曲线_2019_nCoV_利用python根据已知点求拟合曲线及简单预测(无实际意义)...

    前言 本文仅做根据已知点求拟合曲线的几种方法的python实现,无任何实际意义 数据来源(另一篇博文) 利用Python爬取新冠肺炎疫情实时数据,Pyecharts画2019-nCoV疫情地图 参考 ...

  4. 已知函数和y值求自变量用matlab,matlab已知函数值求自变量,求助

    思路是这样的:你得到最小的函数值后,把它带入你作图的方程反解自变量的值.我不知道你画的这个函数图像的方程什么,我用一个二次方程y=x.^2+x给你做示范:先做图:x=-10:0.1:10;y=x.^2 ...

  5. 税收问题的分析:已知税后收入求税前、年终奖一元陷阱的分析

    早上家里来了个客人,聊天中得知了他的税后收入于是蛮好奇他的税前收入是多少. 顺便开了一下脑洞,想证明一下当前年终奖税收模型下,是否存在合理的税率及税收安排,使得"一元陷阱"得以避免 ...

  6. 矩阵——“大材小用”之已知点关于已知直线求其对称点

    矩阵 A = [ cos ⁡ 2 θ sin ⁡ 2 θ sin ⁡ 2 θ − cos ⁡ 2 θ ] \mathbf{A}= \begin{bmatrix} \cos2\theta & \ ...

  7. 已知序列求蝶形运算_在N=32的基 2 时间抽取发 FFT 运算流图中,从 到 需______级蝶形运算过程。 (4.0分)_学小易找答案...

    [单选题]互相关函数性质正确的是: [计算题]两个有限长的复序列 x[n] 和 h[n] ,其长度分别为 N 和 M ,设两序列的线性卷积为 y[n]=x[n]*h[n] ,回答下列问题: (1) 序 ...

  8. C语言--已知三边求三角形面积

    已知三边求面积用海伦公式S=sqrt[p(p-a)(p-b)(p-c)] p=(a+b+c)/2 #include<stdio.h> #include<math.h> int ...

  9. 已知分布函数求概率密度例题_高中数学必修一函数知识点总结

    同学们,今天开始讲解函数章节学习,函数这章极其重要,因为函数是高中数学重要的枢纽章节,高中数学除了立体几何和概率统计和函数没有关系之外,所有章节多多少少和函数有关系,所以函数学不好高中数学很难突破10 ...

最新文章

  1. v$open_cursor与session_cached_cursor
  2. 彩色图如何转换成灰度
  3. 相似度--欧氏距离(归一化)
  4. 关于python进行批量数据备份及部署
  5. js 浅拷贝直接赋值_JS中实现浅拷贝和深拷贝的代码详解
  6. 牛客16429 组合数问题(二维前缀和、杨辉三角)
  7. 3章.Linux主机规划和磁盘分区
  8. Linq to Sql: 集成数据库语言查询之一
  9. 大一计算机考试题库知识点,大一 计算机基础 期末考试题库
  10. 微软邮件服务器名称,邮箱服务器角色概述
  11. java jdk运行_java运行机制、Jdk版本及Java环境变量
  12. WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))
  13. Windows核心编程_LOG软件
  14. 第一回 钟碧诚 被迫上屋顶
  15. 开发人员的U盘,最好是128G
  16. python删除一行代码_python基础教程:python3.7 openpyxl 删除指定一列或者一行的代码...
  17. Linux的远程传输文件scp及出现Permission denied (publickey).lost connection问题解决方法
  18. php 检查货币类型_php 判断函数是否为费用类型(金额/货币:6.02)有小数点
  19. 计算机文献检索语言,文献检索语言
  20. 搭建网站从服务器购买备案到域名注册整个流程

热门文章

  1. 阿里云网站备案未通过域名核验的原因和解决方法
  2. AMD GPU任务调度(3) —— fence机制
  3. 2022-04-11 阿里CTO线 Java开发实习生 一面面经
  4. 性能测试工程师技术履历表
  5. 简明入门讲义——DNS架构是如何发展的
  6. Tomcat配置路径
  7. 2021最佳DevOps监控工具
  8. 明翰经验系列之学习篇(持续更新)V1.4
  9. 截图软件greenshot教程
  10. Word内安装Mathtype