首页 > 解决方案 > 如何在曲线 Python 下绘制随机值?

问题描述

我想绘制在颜色曲线下显示的随机数,以及在另一种颜色上方显示的随机数,我尝试将我的值放入数组并放置一个 if,我一直在尝试但我没有得到结果,这是我的代码:

import numpy as np
import matplotlib.pyplot as plt

def func(x):
    return (np.exp(-x))*x**2
f = np.linspace(0, 10, 1000)
y = func(f)
yw=np.array(y)
plt.plot(f, y)
plt.axhline(y=0.6, xmin=0, xmax=10)
h=np.random.randn(1000)
h2=np.array(h)
#if(h2>yw):
 #   plt.plot(f,h,'mo')
#else:        
plt.plot(f, y)
plt.plot(f,h,'co')
plt.xlim(0,10)
plt.ylim(0,0.6012)

标签: pythonmatplotlibrandomcolors

解决方案


您可以尝试遍历每个值,检查其对应值是否大于或小于函数,并用不同的颜色绘制每个点。

我试过这个:

for i in range(len(f)):
    if h[i] > func(f[i]):
        plt.plot(f[i],h[i],'co')
    else:
        plt.plot(f[i],h[i],'ro')

这是我得到的图像:

输出图


推荐阅读