用python tkinter显示Mandelbrot图
我前面已经讲过了用Matlab显示Mandelbrot图的方法,原理在那里也说的,链接地址:http://blog.csdn.net/whoispo/article/details/49557823, 这次就不讲了。直接贴代码(python3):
# encoding=utf-8from tkinter import *
from random import randintdef paint(LX1, LX2, LY1, LY2):xscale = float(canvas["width"]) / (LX2 - LX1)yscale = float(canvas["height"]) / (LY2 - LY1)xstep = (LX2 - LX1) / (float(canvas["width"]))ystep = (LY2 - LY1) / (float(canvas["height"]))x = LX1while x < LX2:y = LY1while y < LY2:c = count(complex(x, y))if c == COUNT_LIMIT:color = "black"else:color = random_color[c-1]canvas.create_rectangle((x - LX1) * xscale, (y - LY1) * yscale,(x - LX1) * xscale, (y - LY1) * yscale, fill=color, outline = color, tags="pic")y += ystepx += xstepdef count(c):z = complex(0,0)for i in range(COUNT_LIMIT):z = z*z + cif abs(z) > 2: return ireturn COUNT_LIMITCOUNT_LIMIT = 1000
LX1 = -2.0
LX2 = 2.0
LY1 = -2.0
LY2 = 2.0random_color = []
for i in range(COUNT_LIMIT):r = randint(0, 255)g = randint(0, 255)b = randint(0, 255)r = "%02x" % rg = "%02x" % gb = "%02x" % brandom_color.append("#"+r+g+b)
window = Tk()
window.title("曼德布罗特分形")canvas = Canvas(window, width=500, height=500, bg="white")
canvas.pack()paint(LX1, LX2, LY1, LY2)window.mainloop()
python的计算速度肯定与Matlab是没办法比的,运行时耐心点吧。本来还绑定一个鼠标滚动放大缩小的事件,但是python计算速度太慢了,经常卡死,就放弃了。大家可以尝试一下
如何绑定鼠标滚轮的事件,请见下一篇文章。
用python tkinter显示Mandelbrot图相关推荐
- python无法显示动图_python,html_用Python实现的HTTP服务器无法显示图片,python,html,html5 - phpStudy...
Hello, World!
- 为什么python画不了图-解决python中使用plot画图,图不显示的问题
python matplotlib画的图怎么显示不出来 初学python,matplotlib库画图不显示分享助别熬夜了,你等不来的人,等到多晚都不会来的. 见图.python matplotlib ...
- python tkinter布局混用_[宜配屋]听图阁
这篇文章主要介绍了python tkinter控件布局项目实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码部分: from tkinter ...
- python tkinter进度条_在python tkinter中Canvas实现进度条显示的方法
如下所示: from tkinter import * import time #更新进度条函数 def change_schedule(now_schedule,all_schedule): can ...
- Python+tkinter模拟京东旋转图片式验证码输入
好消息:"Python小屋"编程比赛正式开始 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学出版社, ...
- python+tkinter使用canvas不显示图片的问题
python+tkinter中使用canvas 切换不显示图片的问题 一.canvas使用 canvas对象的create_image方法有两个重要的点要注意,一个是格式,第二是要保持持续引用: 1. ...
- python 使用图形化界面tkinter显示图片 规定大小!
先上代码 import tkinter as tk from PIL import Image,ImageTk from tkinter import ttkwin = tk.Tk() win.geo ...
- python读取摄像头或者视频文件、并在gui中实时显示_python:tkinter显示来自网络摄像头的视频并执行QR扫描...
我一直在尝试创建一个tkinter顶级窗口,用于流式传输视频表单摄像头并执行QR扫描.我从SO和another code得到这个QR扫描代码,它只是从网络摄像头更新图像,而不是在tkinter标签上流 ...
- Python:年月日日历图的显示操作、time模块常用法
对年月日的操作 一.显示今年的日历图. 二.判断是不是闰年? 三.显示任意这个月的日历图. 四.这个月有几天? 9月1日是星期几? 五.这个月的第 ?天 六.获取当前时间 七.1 分钟掌握 time ...
最新文章
- linux添加美式键盘,win8\win server 2012添加【中文--美式键盘】
- 揭秘Java网络爬虫程序原理
- nfs+inotify
- 【Python】多线程的使用,通过传参接收返回值
- linux c语言内核函数,2014-1-5_linux内核学习(1)_C语言基础
- MATLAB对一个二维矩阵画三维图
- 细说Activity与Task(任务栈)
- (int)、Convert.ToInt32()与int.Parse()的区别
- android view分析工具栏,如何在Android工具栏中使用SearchView
- 软件园区网络设计之网络总体设计
- 【嵌入式】51单片机最小系统以及蜂鸣器驱动电路
- 转换到coff期间_“fatal error lnk1123 转换到coff期间失败”的解决方法
- VS上位机开发——串口助手
- 弱水三千,该取几瓢饮?
- Android面试英文介绍
- 全基因组关联分析学习资料(GWAS tutorial)20210313更新版
- 「大冰撸设计模式」java 创建型模式之单例模式
- Springboot RestTemplate post/get请求所有情况
- 一.stm32的内部flash操作笔记
- 自动采购订单 Auto PO
热门文章
- ROS: catkin和rosmake创建和编译功能包、执行节点
- AndroidStuido编译release版本apk(非签名apk)
- AndroidVerifyBoot
- android camera(二):摄像头工作原理、s5PV310 摄像头接口(CAMIF)
- PYTHON学习0022:函数基本介绍----2019-6-17
- android 7.0 调用系统相机崩溃的解决方案(非谷歌官方推荐)
- sql查阅每一月的数据
- 制作基于http的yum源2
- 新建Web网站与新建Web应用程序的区别
- 关于Jsoup解析https网页的问题