动态画出300以内的质数曲线图

用python:

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt  
import numpy as np  
import time  
import os
  
# 定义一个函数来检查一个数是否为质数  
def is_prime(n):  
    if n < 2:  
        return False  
    for i in range(2, int(n ** 0.5) + 1):  
        if n % i == 0:  
            return False  
    return True  
  
# 生成300以内的质数列表  
primes = [num for num in range(2, 300) if is_prime(num)]  
  
# 初始化图表  
plt.figure()  
plt.xlabel('index')  
plt.ylabel('value')  
plt.title('prime number graph')  
plt.grid(True)  
  
# 绘制第一个点  
plt.scatter(0, primes[0])  
plt.show(block=False)  # 显示图表但不阻塞程序执行  
  
# 循环绘制每个质数点,每秒更新一个点  
for i in range(1, len(primes)):  
    plt.scatter(i, primes[i])  # 绘制当前点  
    plt.pause(0.05)  # 暂停一秒  
    # time.sleep(0.1)  # 等待一秒,确保绘图是在一秒后进行的  
    plt.draw()  # 更新图形
input("Press Enter to continue...")

效果:

顺便一提,《ubuntu的动图截屏怎么做》

你可能感兴趣的:(python,qt,示例,python,pyqt,数据可视化)