我是初学者,并且有一个有关在比顿中进行绘图的问题

时间:2019-09-19 03:26:51

标签: python

我是python的新手。

我想知道问题的语法

假设我要绘制一个量x = (constant with a fixed given value) * ln (1+z) versus z(从c到d不等)

如何定义变量x和z,如何输入'ln'函数

我已经导入了numpyscipymatplotlib,但不知道此后如何进行

2 个答案:

答案 0 :(得分:0)

要绘制曲线,您需要两个列表,其中一个是x轴上的域,另一个是y轴上的范围点。首先,我们使用python内置的输入函数作为常量作为输入,并确保其为int,并根据需要使用数学库和log函数进行记录。

import math
import matplotlib.pyplot as plt

a = int(input("enter a value for constant : "))
c,d = 0,100
xvals = list(range(c,d,1)) # start,end,step
print(xvals)
yvals = [a*math.log(1+x) for x in xvals]
print(yvals)

plt.plot(xvals,yvals)
plt.show()

答案 1 :(得分:0)

由于您已经导入了numpy,这只是另一个答案:

import numpy as np
import matplotlib.pyplot as plt

x_coeff = 10
c = 0
d = 100
z = [i for i in range(c, d)]
x = [x_coeff * np.log(1+v) for i, v in enumerate(z)]
plt.plot(z, x)
plt.show()

最好检查一下文档,然后尝试一下: https://docs.scipy.org/doc/numpy/reference/generated/numpy.log.html

您可能还需要了解“列表理解”。 这是在python中创建列表的一种美丽而便捷的方法。