[分形几何] 1.3 Koch曲线python可视化
代码参照科赫曲线博文。递归思路建议读原文增强理解。
import matplotlib.pyplot as plt
import math
# 原文链接:https://blog.csdn.net/qq_33598125/article/details/88562822
class point:def _init_(self):self.x=0self.y=0def koch(n,p1,p2,xx,yy):if n==0:returns,t,u=point(),point(),point()theta=math.pi / 3s.x=p1.x+(p2.x-p1.x)/3.s.y=p1.y+(p2.y-p1.y)/3.t.x=p2.x-(p2.x-p1.x)/3.t.y = p2.y - (p2.y - p1.y) / 3.u.x=math.cos(theta)*(t.x-s.x)-math.sin(theta)*(t.y-s.y) +s.xu.y = math.sin(theta) * (t.x - s.x) + math.cos(theta) * (t.y - s.y) +s.ykoch(n-1,p1,s,xx,yy)xx.append(s.x)yy.append(s.y)koch(n-1,s,u,xx,yy)xx.append(u.x)yy.append(u.y)koch(n-1,u,t,xx,yy)xx.append(t.x)yy.append(t.y)koch(n-1,t,p2,xx,yy)return xx,yyp1,p2=point(),point()
p1.x=0
p1.y=0
p2.x=100
p2.y=0
n = int(2)# 调整阶数
xx = []
yy = []
xx.append(p1.x)
yy.append(p1.y)
nxx,nyy = koch(n,p1,p2,xx,yy)
nxx.append(p2.x)
nyy.append(p2.y)ax = plt.subplot(111)plotdict = { 'dx': nxx, 'dy': nyy }
ax.plot('dx','dy','b',data=plotdict)plt.show()
可视化结果:
书籍信息:
题名/责任者:分形几何学/陈颙,陈凌编著
出版发行项:北京:地震出版社,1998
ISBN及定价:7-5028-1482-5/RMB22.00
[分形几何] 1.3 Koch曲线python可视化相关推荐
- python分形几何_使用 Python 绘制分形: Koch 曲线、Julia 集、Mandelbrot 集
目录 1. Koch曲线 瑞典数学家Helge von Koch,在1904年发表的"从初等几何构造的一条没有切线的连续曲线"的论文中提出Korch曲线.它的描述如下:指定一条线段 ...
- python绘制科赫曲线_python中使用递归实现koch曲线绘制
python 中使用递归绘制koch曲线 koch曲线是由瑞典数学家Helge von Koch,在1904年发表的"从初等几何构造的一条没有切线的连续曲线"的论文中提出的.它的描 ...
- Python可视化——3D绘图解决方案pyecharts、matplotlib、openpyxl
Python可视化--3D绘图解决方案pyecharts.matplotlib.openpyxl 1. pyecharts 2. matplotlib 3. openpyxl 这篇博客将介绍pytho ...
- 新视角带你认识Python可视化库(附代码资源)
作者:Dan Saber 翻译:笪洁琼 校对:梁傅淇 本文约16196字,建议阅读20+分钟. 本文中,作者借助拟人化的形式,让Python中值得一提的可视化库共同出演了一出戏剧,形象.生动地展现了不 ...
- 2021-04-28 Python可视化图表生成-Matplotlib绘图
Python可视化图表生成-Matplotlib Matplotlib 是Python中类似 MATLAB 的绘图工具,熟悉 MATLAB 也可以很快的上手 Matplotlib 安装 pip ins ...
- python 可视化饼图_Python可视化学习(饼状图,坐标系...)
写在前面的话 01 今天资源君带大家学习一下Python的可视化,何谓可视化呢?我们常常听说Python的数据分析,数据分析中很重要的一个就是将数据展示出来,如何展示出来呢?这就得靠我们的Python ...
- python可视化神器_详解Python可视化神器Yellowbrick使用
机器学习中非常重要的一环就是数据的可视化分析,从源数据的可视化到结果数据的可视化都离不开可视化工具的使用,sklearn+matplotlib的组合在日常的工作中已经满足了绝对大多数的需求,今天主要介 ...
- 【CSDN软件工程师能力认证学习精选】Python可视化库
CSDN软件工程师能力认证(以下简称C系列认证)是由中国软件开发者网CSDN制定并推出的一个能力认证标准.C系列认证历经近一年的实际线下调研.考察.迭代.测试,并梳理出软件工程师开发过程中所需的各项技 ...
- 关于Python可视化Dash工具
Dash是基于Flask的Python可视化工具,严格说来由三个部分组成,首先是Flask提供了标准web环境,再次是plotly这个图表可视化工具,最后是与dash相配套的html.图表等交互式组件 ...
最新文章
- [原]tornado源码分析系列(三)[网络层 IOLoop类]
- k8s实战之数据卷(volume)
- NLP千亿预训练模型的“第四范式”之Prompt Learning介绍分享
- POJ 1170 Shoping Offers(IOI 95)
- UA MATH571B 试验设计VI 随机效应与混合效应3 嵌套设计
- sklearn模型评估
- MMDetection-运行时
- 通过Service访问应用 (1)
- 【移植驱动到Linux3.4.2内核之一】移植DM9000C网卡驱动
- java监听数据库操作_第十六篇——JDBC操作数据库之监听器
- Mac桌面上找不到或无法显示USB问题
- Linux进程的管理与调度(五) -- Linux下0号进程的前世(init_task进程)今生(idle进程)
- 3D游戏引擎入门课程——场景渲染
- 【转载】CC控制服务的设计和侦测方法综述
- 4.链表LinkedList
- Windows Server 2008R2 取消屏幕自动锁定
- (附源码)ssm校园交流网站 毕业设计 261624
- 欧拉角中各种角度的名称
- ECG信号滤波及计算心率
- HTML垂直居中布局