2017-02-12 45 views
0

我創建了一個計算素數的程序。這只是一個測試,但我認爲這將是有趣的,然後將其繪製在一張圖上。如何與matplotlib.pyplot同時繪製一個列表?

import matplotlib.pyplot as plt 

max = int(input("What is your max no?: ")) 
primeList = [] 

for x in range(2, max + 1): 
    isPrime = True 
    for y in range (2 , int(x ** 0.5) + 1): 
    if x % y == 0: 
     isPrime = False 
     break 

    if isPrime: 
     primeList.append(x) 


print(primeList) 

我怎麼能那麼繪製primeList,我可以做到這一切在一次外的for循環?

+0

目前你沒有什麼陰謀?另外,你會在'x軸'上策劃什麼?你只需要在長度相等的列表中提供x/y對。 – roganjosh

+0

'plt.plot(範圍(len(primeList)),primeList)'例如。 – roganjosh

+0

我有一個額外的代碼塊繪製了這個和一個名爲itemsInList的變量,這是primeList –

回答

1

該地塊的名單與它的索引:

from matplotlib import pyplot as plt 

plt.plot(primeList, 'o') 
plt.show() 

這個程序:

from matplotlib import pyplot as plt 

max_= 100 
primeList = [] 

for x in range(2, max_ + 1): 
    isPrime = True 
    for y in range (2, int(x ** 0.5) + 1): 
     if x % y == 0: 
      isPrime = False 
      break 
    if isPrime: 
     primeList.append(x) 

plt.plot(primeList, 'o') 
plt.show() 

得到這個情節:

enter image description here

相關問題