分形

康托集

# 康托集

import pygame

pygame.init()

screen = pygame.display.set_caption('康托集')

screen = pygame.display.set_mode([1000, 250])

screen.fill([255, 255, 255])

pygame.display.flip()

len0 = 1000 # 初始线条长度

leni = len0 # 当前最小线条长度

line = 0 # 当前行数

while leni > 1:

for event in pygame.event.get():

if event.type == pygame.QUIT:

exit()

n = 2**line # 集合元素份数

tep = [0, ] # 元素第一个端点位置

while len(tep) < n:

nt = (tep[-1] + leni) * 2 # 接下来首个元素位置

tepp = [] # 接下来元素位置

for j in tep:

tepp.APPend(nt + j)

tep.extend(tepp)

for k in tep:

pygame.draw.line(screen, [0, 0, 0], [

k, 30 * line + 5], [k + leni, 30 * line + 5], 10)

pygame.display.flip()

line += 1

leni = leni / 3

while 1:

for event in pygame.event.get():

if event.type == pygame.QUIT:

exit()

输出:

康托尘埃

代码:

# 康托尘埃

import pygame

pygame.init()

screen = pygame.display.set_caption('康托尘埃')

screen = pygame.display.set_mode([487, 487])

screen.fill([255, 255, 255])

pygame.display.flip()

cantor = [1, ] # 起点集,最小像素为1

while (cantor[-1] + 1) * 3 < 1000:

st = (cantor[-1] + 1) * 2 # 下一迭代起点

tep = []

for i in cantor:

tep.append(st + i) # 重复上一子集

cantor.extend(tep)

# print(cantor[-1]) # 输出最大像素起点

for i in cantor:

for j in cantor:

screen.set_at([i, j], [0, 0, 0])

pygame.display.flip()

while 1:

for event in pygame.event.get():

if event.type == pygame.QUIT:

exit()

输出:

方块分形

代码:

# 方块分形

import pygame

maxlen = 500 # 边界

pygame.init()

screen = pygame.display.set_caption('方块分形')

screen = pygame.display.set_mode([maxlen, maxlen])

screen.fill([255, 255, 255])

pygame.display.flip()

def draw(st, leni):

# st: 左上角点位置[left,top]

# leni: 当前方块边长

if leni > 3:

leni /= 3

draw(st, leni) # 左上

draw([st[0] + leni * 2, st[1]], leni) # 右上

draw([st[0] + leni, st[1] + leni], leni) # 中间

draw([st[0], st[1] + leni * 2], leni) # 左下

draw([st[0] + leni * 2, st[1] + leni * 2], leni) # 右下

pygame.display.flip()

else:

pygame.draw.rect(screen, [0, 0, 0], [st[0], st[1], leni, leni])

draw([0, 0], maxlen)

while 1:

for event in pygame.event.get():

if event.type == pygame.QUIT:

exit()

输出:

谢尔宾斯基三角垫

代码:

# 谢尔宾斯基三角垫

import pygame

maxlen = 500 # 边界

pygame.init()

screen = pygame.display.set_caption('谢尔宾斯基三角垫')

screen = pygame.display.set_mode([maxlen, maxlen])

screen.fill([255, 255, 255])

pygame.display.flip()

def mid(a, b):

# 求出a, b点的中点坐标

return [(a[0] + b[0]) / 2, (a[1] + b[1]) / 2]

def draw(one, two, tri):

# 参数代表三个顶点,上、左、右排序

if one[0] - two[0] > 2: # 可分

draw(one, mid(one, two), mid(one, tri)) # 画上面的三角

draw(mid(one, two), two, mid(two, tri)) # 画左边三角

draw(mid(one, tri), mid(two, tri), tri) # 画右边的三角

pygame.display.flip()

else: # 达到最小结构

pygame.draw.polygon(screen, [0, 0, 0], [one, two, tri])

draw([maxlen / 2, 0], [0, maxlen], [maxlen, maxlen])

while 1:

for event in pygame.event.get():

if event.type == pygame.QUIT:

exit()

输出:

谢尔宾斯基方毯

代码:

# 谢尔宾斯基方毯

import pygame

maxlen = 500 # 边界

pygame.init()

screen = pygame.display.set_caption('谢尔宾斯基方毯')

screen = pygame.display.set_mode([maxlen, maxlen])

screen.fill([0, 0, 0])

pygame.display.flip()

def p2(p, r, d):

# p: 参考左上顶点

# r: 距离参考点向右偏移距离

# d: 距离参考点向下偏离距离

return [p[0] + r, p[1] + d]

def points(p, leni):

# 返回p,leni对应的四边形四个顶点列表

return [p, p2(p, leni, 0), p2(p, leni, leni), p2(p, 0, leni)]

def draw(p, leni):

# p:左上顶点

# leni:边长

leni /= 3

pygame.draw.polygon(screen, [255, 255, 255],

points(p2(p, leni, leni), leni))

if leni > 3:

draw(p, leni)

draw(p2(p, leni, 0), leni)

draw(p2(p, 2 * leni, 0), leni)

draw(p2(p, 0, leni), leni)

draw(p2(p, 2 * leni, leni), leni)

draw(p2(p, 0, 2 * leni), leni)

draw(p2(p, leni, 2 * leni), leni)

draw(p2(p, 2 * leni, 2 * leni), leni)

pygame.display.flip()

draw([0, 0], maxlen)

while 1:

for event in pygame.event.get():

if event.type == pygame.QUIT:

exit()

输出:

相关阅读

"""

A Simple Version of Midway Island Naval Warfare with Pthon for Easy Learning by lixingqiu

这个射击游戏是使用Arcade模

在上一篇博客中,我们已经仔细讲解了iloc和loc,只是简单了提到了ix。这是因为相比于前2者,ix更复杂,也更让人迷惑。

因此,本篇博客通过

hadoop的FileSplit简单使用FileSplit类继承关系:FileSplit类中的属性和方法:作业输入:[java]

view plain

copy

print?hadoop@hado

新零售区别于传统零售,它的核心是以人为本,利用当下发达的数字技术充分逼近消费者的内心需求,重构人货场,实现“以消费者体验为中心”

通过jQuery ajax实现从服务器查询数据,返回给前端并显示到html页面

html文件

利用python画分形图_「分形」python简单的分形图片 - seo实验室相关推荐

  1. 用python画盒图_[519]matplotlib(四)|Python中用matplotlib绘制盒状图(Boxplots)和小提琴图(Violinplots)...

    简单的盒状图 import matplotlib.pyplot as plt import numpy as np all_data = [np.random.normal(0, std, 100) ...

  2. cookiejar包_「cookiejar」http.cookiejar库之CookieJar - seo实验室

    cookiejar cookiejar和HTTPCookieProcessor 我们在使用爬虫的时候,经常会用到cookie进行模拟登陆和访问.在使用urllib库做爬虫,我们需要借助http.coo ...

  3. android seekto实现_「seekto」android MediaPlayer 的SeekTo 方法 - seo实验室

    seekto Android使用 mediaplayer 播放video视频过程中, 当用户退出当前播放,再从后台恢复播放时,需要跳转到之前退出的时间点继续播放. 使用的方法基本都是 seekto 之 ...

  4. python画circos图_从零开始学CIRCOS绘制圈图(四)

    从零开始学CIRCOS绘制圈图(一) 从零开始学CIRCOS绘制圈图(二) 从零开始学CIRCOS绘制圈图(三) 通常circos的中间部分不是空白区域,会用一条条线进行连接,表示两个染色体部分区域有 ...

  5. python画平行坐标图_[宜配屋]听图阁

    平行坐标图,一种数据可视化的方式.以多个垂直平行的坐标轴表示多个维度,以维度上的刻度表示在该属性上对应值,相连而得的一个折线表示一个样本,以不同颜色区分类别. 但是很可惜,才疏学浅,没办法在Pytho ...

  6. python画环形图_用Python把图做的好看点:用Matplotlib画个环形图

    P老板:小Lo啊,你觉得这几个图好看吗 我:好看,好看 P老板:我也觉得,这个月的月报,就用这个把,你给我几个,我看看 我:..... 于是乎,我们今天的目标是什么!!! 画个环形图!!! 今天,我们 ...

  7. python画厢式图_用matplotlib画箱体图(boxplot)

    画boxplot的接口为 matplotlib.pyplot.boxplot,不过在画之前,我需要好好理解一下箱体图所代表的含义和计算方法. 用一个实际的例子来说明如何画boxplot,这个例子来自w ...

  8. powerdesigner画关系图_「俯首甘为孺子牛」李可染牧牛图赏析

    李可染,中国近代杰出的画家.诗人,画家齐白石的弟子.李可染自幼即喜绘画,13岁时学画山水.43岁任中央美术学院教授,49岁为变革山水画,行程数万里旅行写生.72岁任中国美术家协会副主席.中国画研究院院 ...

  9. python画漏斗图_只需简单几步,教你用python完成漏斗图的绘制

    商业分析中经常会用到漏斗图.尤其是在网站流量监控.电商商品转化等一些数据运营方面.漏斗图之所以是漏斗就就是倒三角的形状,是因为用户或者流量,集中从某个功能点进入,很大可能会按照产品本身设定的流程来完成 ...

  10. python 中主线程结束 子线程还在运行么_「干货」python线程笔记

    引言&动机 考虑一下这个场景,我们有10000条数据需要处理,处理每条数据需要花费1秒,但读取数据只需要0.1秒,每条数据互不干扰.该如何执行才能花费时间最短呢? 在多线程(MT)编程出现之前 ...

最新文章

  1. centos下yum安装nginx
  2. VS调试时怎么跳过for循环?
  3. Node.js 笔记01
  4. android 学习随笔十六(广播 )
  5. 颓废了1年+,今天开始勤(tui)奋(fei)啦
  6. 4.RabbitMQ 安装
  7. python安装笔记_Python学习笔记(一)python的安装和配置
  8. 集合代码----小练习3
  9. UVA 11624 BFS
  10. 柳州计算机一级考试报名时间,2021计算机考试报名时间和考试时间
  11. TwinCAT 3 故障程序
  12. IDEA 运行 Tomcat 中文乱码的问题
  13. 【Codeforces613D】Kingdom and its Cities【虚树】【Tree DP】
  14. CE是什么缩写,是什么含义
  15. Gartner数据库魔力象限2022:阿里领先、腾讯再次进入、华为退出
  16. SE,SA和RD都代表什么
  17. mysql : 使用不等于过滤null的问题
  18. 保研面试/考研复试:英语口语面试必备话题及常用句型句式整理(三)
  19. 决策理论(decision theory)
  20. 模型实践| CLIP 模型

热门文章

  1. -I (大写i)、-L、-l(小写L) 的使用
  2. WAP流量变现的几种方式
  3. 公众号原主体营业执照已注销 如何办理账号迁移和公证书?
  4. MySql的详细安装与配置步骤
  5. 【Python机器学习】标注任务与序列问题讲解(图文解释)
  6. Arduino + SmartAirFilter 制作智能感应的 PM 空气净化器
  7. 图片太大怎么改小kb?简单的图片压缩方法分享
  8. 蓝牙协议栈接收数据包流程1
  9. UBI,MTD(Memory Technology Device),raw flash,emmc,Flash,Block Device
  10. IT通过什么途径去美国工作?