如何在python中绘制500对连续随机数?
我是python新手,我正在研究的问题之一是绘制500对连续随机数。我有一个公式可以生成如下所示的数字: x轴 y轴 我现在想知道的是如何将这些结果转换成数组或列表。我曾尝试将plt.plot(new_seed)放在循环语句中,但在我尝试绘图时,这并没有起作用。有什么想法吗 我使用import matplotlib.pyplot作为plt如何在python中绘制500对连续随机数?,python,matplotlib,python-2.7,Python,Matplotlib,Python 2.7,我是python新手,我正在研究的问题之一是绘制500对连续随机数。我有一个公式可以生成如下所示的数字: x轴 y轴 我现在想知道的是如何将这些结果转换成数组或列表。我曾尝试将plt.plot(new_seed)放在循环语句中,但在我尝试绘图时,这并没有起作用。有什么想法吗 我使用import matplotlib.pyplot作为plt 提前感谢您的帮助 您可能应该做一些(更多)python教程。。列表是python的一个基本方面,您似乎不理解它们 import matplotlib.pypl
提前感谢您的帮助 您可能应该做一些(更多)python教程。。列表是python的一个基本方面,您似乎不理解它们
import matplotlib.pyplot as plt
import random
x = []
a,seed,c,m,n = 128,10,0,509,500
for i in range (1,n):
new_seed=(a*seed+c)%m
seed = new_seed
x.append( new_seed)
a,seed,c,m,n = 269,10,0,2048,500
y= []
for i in range (1,n):
new_seed=(a*seed+c)%m
seed = new_seed
y.append( new_seed)
plt.plot(x,y)
plt.show()
您可能应该做一些(更多)python教程。。列表是python的一个基本方面,您似乎不理解它们
import matplotlib.pyplot as plt
import random
x = []
a,seed,c,m,n = 128,10,0,509,500
for i in range (1,n):
new_seed=(a*seed+c)%m
seed = new_seed
x.append( new_seed)
a,seed,c,m,n = 269,10,0,2048,500
y= []
for i in range (1,n):
new_seed=(a*seed+c)%m
seed = new_seed
y.append( new_seed)
plt.plot(x,y)
plt.show()
您正在打印数字(
print new\u seed
),如果您试图打印它们,这将没有任何用处。这有意义吗
您应该做的是在生成每个数字时将其保存到列表中的下一个可用位置。一种简单的方法是在循环之前创建一个空列表,每次生成一个数字时,只需将它附加到列表中,而不是打印它
xlist = []
for i in xrange(n):
new_seed = # generate the number
xlist.append(new_seed)
类似地,对于ylist
实际上,您要做的是使用列表理解,如下所示:
xlist = [generate_number(...) for i in xrange(n)]
这只是我上面所写内容的简写语法。(好的,它也运行得更快)它确实需要您将生成随机数的过程封装到函数中,但无论如何,这是个好主意
然后,您可以使用matplotlib打印
xlist
vs.ylist
您正在打印数字(print new\u seed
),如果您试图打印数字,这将没有任何用处。这有意义吗
您应该做的是在生成每个数字时将其保存到列表中的下一个可用位置。一种简单的方法是在循环之前创建一个空列表,每次生成一个数字时,只需将它附加到列表中,而不是打印它
xlist = []
for i in xrange(n):
new_seed = # generate the number
xlist.append(new_seed)
类似地,对于ylist
实际上,您要做的是使用列表理解,如下所示:
xlist = [generate_number(...) for i in xrange(n)]
这只是我上面所写内容的简写语法。(好的,它也运行得更快)它确实需要您将生成随机数的过程封装到函数中,但无论如何,这是个好主意
然后,您可以使用matplotlib绘制
xlist
vs.ylist
谢谢您的帮助,但我需要的数字来自上面的计算,不是随机的numbers@Joran但是,的绘图方法是有效的。只需将x
和y
值更改为您自己的值即可。@Joran:使用类似OP的循环可能更简单。您的x
和y
行将只包含一个数字,因为种子永远不会重置。是的,我正在编辑它。。。对不起,我没有意识到他想让我为他做这件事。。。我想他对python有足够的基本了解,可以拿我最初的例子来应用它……我认为在这个网站上这应该是一个公平的假设。谢谢你的帮助,但我需要的数字来自上面的计算,而不是随机的numbers@Joran但是,的绘图方法是有效的。只需将x
和y
值更改为您自己的值即可。@Joran:使用类似OP的循环可能更简单。您的x
和y
行将只包含一个数字,因为种子永远不会重置。是的,我正在编辑它。。。对不起,我没有意识到他想让我为他做这件事。。。我想他对python有足够的基本了解,可以拿我最初的例子来应用它……我认为在这个网站上这应该是一个公平的假设。谢谢,这对理解我的主要问题非常有帮助。问题不在于如何把我的结果列在一个列表中!谢谢,这对理解我的主要问题很有帮助。问题不在于如何把我的结果列在一个列表中!