python简笔画绘制 数据驱动绘图_python:绘制枫叶简笔画
上面是枫叶的简笔图,我们怎么用python程序来完全模拟以上的图片呢?01今天为大家带来用python画枫叶的详细过程。
首先,我们保存上面的图片为“枫叶.jpg”,放到python的目录下。打开python编辑器(本篇使用的pycharm)
函数实现
导入所需的库函数:
from PIL import Image
import turtle as t
接下来,通过PIL读取图片的信息,对接turtle画图库完成绘制过程。
读取图片的函数:
def leave(path):
img = Image.open(path) # 读取图像
global size
size=img.size
pix = img.load()
list = [[] for i in range(size[1])] # 构造空列表
for i in range(0, size[1]): # 从第一行开始循环
k = 0
for j in range(0, size[0]-1):
# 如果当前像素与下一个像素值不同且两者有一为背景色,则记录坐标
if pix[j, i] != pix[j + 1, i] and (255, 255, 255) in [pix[j, i], pix[j + 1, i]]:
if k == 0: # index值为0说明是像素条起始坐标
list[i].append([j + 1, ])
k += 1
else: # index值为1说明记录的是像素条结束坐标
list[i][-1].append(j)
k = 0
return list
绘制的函数:
def draw(path):
l=leave(path)
# 绘图窗口大小
t.screensize(canvwidth=size[0], canvheight=size[1],bg='white')
t.speed(1000)
for i in range(0, size[1]):
# 遍历每一行
t.pencolor('black')
for line in l[i]:
# 遍历每一个像素条
t.penup()
t.goto(line[0] - size[0] // 2, (size[1] - i) - size[1] // 2)
t.pendown()
t.goto(line[1] - size[0] // 2, (size[1] - i) - size[1] // 2)
t.mainloop()
最后,调用函数,运行程序:
draw('枫叶.jpg')
运行结果
turtle努力绘画中......
(画笔有一点粗反而让图片更好看了)
过了几分钟。。。
又过了几分钟。。。
终于画完了,turtle表示过度劳累。。。
今天的内容就到这了,我是01,我们明天再见!(觉得好玩的小伙伴关注我吧)
python简笔画绘制 数据驱动绘图_python:绘制枫叶简笔画相关推荐
- python简笔画绘制 数据驱动绘图_python数据分析绘图可视化
简介: 想在1天内快速搞定实时业务数据大屏吗?想用最短路径逆袭成为数据可视化大神吗?想在除了PRD外什么都没有的情况下,体验职场真人版绝境求生吗? 概念:LADV是 以上例子中,生成的可视化图表,均可 ...
- python turtle画彩虹的代码_python绘制彩虹图
本文实例为大家分享了python绘制彩虹图的具体代码,供大家参考,具体内容如下 from turtle import * #控制彩虹路径 def path(pen, r, g, b): pen.pen ...
- python简笔画绘制 数据驱动绘图恐龙_使用python turtle绘制简笔画大白-Go语言中文社区...
使用python turtle绘制简笔画大白 完整代码: import turtle as t pen = t.Turtle() # 定义画笔实例 pen.speed(0) pen.pensize(5 ...
- python简笔画绘制 数据驱动绘图恐龙_超萌超可爱的恐龙简笔画,简单几步就能学会哦!...
原标题:超萌超可爱的恐龙简笔画,简单几步就能学会哦! 今天,给大家分享一组男孩子最喜欢的恐龙简笔画.本次我画的是恐龙世界中的恶魔龙.关于恶魔龙的知识,大家自行去科普吧,我就不过多介绍啦!超萌超可爱的恶 ...
- python简笔画蚂蚁_使用python turtle绘制简笔画大白-Go语言中文社区
使用python turtle绘制简笔画大白 完整代码: import turtle as t pen = t.Turtle() # 定义画笔实例 pen.speed(0) pen.pensize(5 ...
- python简笔画_不给糖果就捣乱,用Python绘制有趣的万圣节南瓜怪
关于万圣节 万圣节又叫诸圣节,在每年的11月1日,是西方的传统节日:而万圣节前夜的10月31日是这个节日最热闹的时刻.在中文里,常常把万圣节前夜(Halloween)讹译为万圣节(All Saints ...
- python简笔画_不给糖果就捣乱,用 Python 绘制有趣的万圣节南瓜怪
关于万圣节 万圣节又叫诸圣节,在每年的 11 月 1 日,是西方的传统节日:而万圣节前夜的 10 月 31 日是这个节日最热闹的时刻.在中文里,常常把万圣节前夜(Halloween)讹译为万圣节(Al ...
- python画五角星填充不同颜色_Python绘制分形树(一)
一步一步了解turtle这个库,先绘制个五角星练手 画布 turtle.screensize(800, 600, "green") turtle.screensize() #返回默 ...
- python简笔画程序_使用python turtle绘制简笔画大白
使用python乌龟画的完整代码简单的中风:进口龟tpen = () # Define刷例子(0)(5)()(90)#头(-100200)()= 1我的范围(120):如果0 < =我< ...
最新文章
- Oracle学习笔记:redo重做日志
- 一道暴力枚举题Win32版本示例
- Phpcms之核心目录phpcms
- linux沙箱隔离_Linux沙箱技术介绍
- python 算术运算
- 路由器链路聚合技术(Eth-Trunk、Ip-Trunk)
- STM32工作笔记0078---UCOSIII任务挂起和恢复
- RISC-V 没你想象的那么好
- ERROR 126 (HY000) at line 1: Incorrect key file for table '/tmp/#sql_7b09_0.MYI'; try to repair it
- php向mysql提交数据_PHP 如何向 MySQL 发送数据
- 图片格式转换器ico_Pixillion——图片格式转换工具
- cas入门之:cas 4 如何以http形式发布
- 【JZOJ 4598】准备食物
- java如何开发游戏大厅_java仿qq游戏大厅的设计与实现
- 确认过眼神—是我重返博客的第一文
- redmine主题 - Flatly light redmine theme扁平化/轻主题
- scanf与scanf_s区别
- Redis常用的五种数据类型
- html语言玫瑰花代码,javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
- EMQX 入门教程 环境篇④——修改HTTP:Dashboard监听的端口
热门文章
- 南京php培训班哪家,南京PHP培训中心哪家比较专业
- python算法详解张玲玲电子版_算法之路该如何学习?
- 【硬核干货】2500字全方面解读Python的格式化输出
- 适用于 Python 的 10 大最佳 IDE,你 Pick 哪一款?
- Python官方最后通牒:Python 2传奇20年将落幕,Python 3接力!
- 【推荐一位Python大佬】 从程序员到创业者,再到自由职业
- mysql linux 下载安装,Mysql 下载 安装 for linux
- java类的成员组成_Java类的组成:类的三个组成部分
- mdkstc系列器件支持包下载_Qorvo PAC系列高集成度电机控制芯片及应用
- go与JAVA差异_20190312_浅谈gojava差异(二)