python绘制神器五角星+小黄人+樱花

目录
  • 前言
  • 绘制五角星
  • 小黄人绘制案例
  • 樱花案例

前言

这期文章我就为大家介绍关于python的艺术美——画图神器

在数学中有一种美,叫几何美,我们又称为艺术美,用具有规律的线条,迭代出美丽的图片,这就是许多艺术家在创作是的灵感渠道。下面我们就为大家准备了一个简单的五角星绘制。

涉及第三库的导入,模块的导入,还有一些我想我现在也介绍不完,下面就让我们一起来领略美感吧!

绘制五角星

import turtle
def draw_recursive_pentargram(size):
'''
迭代绘制五角星
'''
count = 1
while count <= 5:
turtle.backward(size)
turtle.right(144)
count += 1
# 五角星绘制完成,更新参数
size += 10
if size <= 100:
draw_recursive_pentargram(size)
def main():
'''
主函数
'''
turtle.speed(0)
# turtle.penup()
turtle.forward(40)
# turtle.pendown()
turtle.pensize(2)
turtle.pencolor("red")
turtle.bgcolor('black')
size = 50
draw_recursive_pentargram(size)
turtle.exitonclick()
if __name__ == "__main__":
main()

是不是感觉挺神奇的,其实这个算法是最简单的。下面我就让大家来见识一下它的真正的本领,感性的魅力。
这个代码我是去向大师借来的哟,不是小王自己写的,嘻嘻嘻。

小黄人绘制案例

# 小黄人绘制案例************************************************************************
import turtle
t = turtle.Turtle()
wn = turtle.Screen()
turtle.colormode(255)
t.hideturtle()
t.speed(10)
t.penup()
t.pensize(4)
t.goto(100,0)
t.pendown()
t.left(90)
t.color((0,0,0),(255,255,0))
#身体绘制上色
t.begin_fill()
t.forward(200)
t.circle(100,180)
t.forward(200)
t.circle(100,180)
t.end_fill()
#右眼睛绘制上色
t.pensize(12)
t.penup()
t.goto(-100,200)
t.pendown()
t.right(100)
t.circle(500,23)

t.pensize(3)
t.penup()
t.goto(0,200)
t.pendown()
t.seth(270)
t.color("black","white")
t.begin_fill()
t.circle(30)
t.end_fill()

t.penup()
t.goto(15,200)
t.pendown()
t.color("black","black")
t.begin_fill()
t.circle(15)
t.end_fill()

t.penup()
t.goto(35,205)
t.color("black","white")
t.begin_fill()
t.circle(5)
t.end_fill()
#左眼睛绘制上色
t.pensize(3)
t.penup()
t.goto(0,200)
t.pendown()
t.seth(90)
t.color("black","white")
t.begin_fill()
t.circle(30)
t.end_fill()

t.penup()
t.goto(-15,200)
t.pendown()
t.color("black","black")
t.begin_fill()
t.circle(15)
t.end_fill()

t.penup()
t.goto(-35,205)
t.color("black","white")
t.begin_fill()
t.circle(5)
t.end_fill()

#嘴绘制上色
t.penup()
t.goto(-20,100)
t.pendown()
t.seth(270)
t.color("black","white")
t.begin_fill()
t.circle(20,180)
t.left(90)
t.forward(40)
t.end_fill()

#裤子绘制上色
t.penup()
t.goto(-100,0)
t.pendown()
t.seth(0)
t.color("black","blue")
t.begin_fill()
t.forward(20)
t.left(90)
t.forward(40)
t.right(90)
t.forward(160)
t.right(90)
t.forward(40)
t.left(90)
t.forward(20)
t.seth(270)
t.penup()
t.goto(-100,0)
t.circle(100,180)
t.end_fill()

#左裤子腰带
t.penup()
t.goto(-70,20)
t.pendown()
t.color("black","blue")
t.begin_fill()
t.seth(45)
t.forward(15)
t.left(90)
t.forward(60)
t.seth(270)
t.forward(15)
t.left(40)
t.forward(50)
t.end_fill()
t.left(180)
t.goto(-70,30)
t.dot()

#右裤腰带
t.penup()
t.goto(70,20)
t.pendown()
t.color("black","blue")
t.begin_fill()
t.seth(135)
t.forward(15)
t.right(90)
t.forward(60)
t.seth(270)
t.forward(15)
t.right(40)
t.forward(50)
t.end_fill()

t.left(180)
t.goto(70,30)

t.dot()

#脚
t.penup()
t.goto(4,-100)
t.pendown()
t.seth(270)
t.color("black","black")
t.begin_fill()
t.forward(30)
t.left(90)
t.forward(40)
t.seth(20)
t.circle(10,180)
t.circle(400,2)
t.seth(90)
t.forward(20)
t.goto(4,-100)
t.end_fill()

t.penup()
t.goto(-4,-100)
t.pendown()
t.seth(270)
t.color("black","black")
t.begin_fill()
t.forward(30)
t.right(90)
t.forward(40)
t.seth(20)
t.circle(10,-225)
t.circle(400,-3)
t.seth(90)
t.forward(21)
t.goto(-4,-100)
t.end_fill()

#左手
t.penup()
t.goto(-100,50)
t.pendown()
t.seth(225)
t.color("black","yellow")
t.begin_fill()
t.forward(40)
t.left(90)
t.forward(35)
t.seth(90)
t.forward(50)
t.end_fill()
#右手
t.penup()
t.goto(100,50)
t.pendown()
t.seth(315)
t.color("black","yellow")
t.begin_fill()
t.forward(40)
t.right(90)
t.forward(36)
t.seth(90)
t.forward(50)
t.end_fill()

#
t.penup()
t.goto(0,-100)
t.pendown()
t.forward(30)

#
t.penup()
t.goto(0,-20)
t.pendown()
t.color("yellow")
t.begin_fill()
t.seth(45)
t.forward(20)
t.circle(10,180)
t.right(90)
t.circle(10,180)
t.forward(20)
t.end_fill()

#
t.penup()
t.color("black")
t.goto(-100,-20)
t.pendown()
t.circle(30,90)

t.penup()
t.goto(100,-20)
t.pendown()
t.circle(30,-90)
#头顶
t.penup()
t.goto(2,300)
t.pendown()
t.begin_fill()
t.seth(135)
t.circle(100,40)
t.end_fill()

t.penup()
t.goto(2,300)
t.pendown()
t.begin_fill()
t.seth(45)
t.circle(100,40)
t.end_fill()
turtle.exitonclick()

看似复杂而又繁琐的代码,它其实是由规律的,不信你可以自己看看它的写法。

运行美图:

小黄人不错吧!!!

樱花案例

import turtle as T
import random
import time
# 画樱花的躯干(60,t)
def Tree(branch, t):
time.sleep(0.0005)
if branch > 3:
if 8 <= branch <= 12:
if random.randint(0, 2) == 0:
t.color('snow') # 白
else:
t.color('lightcoral') # 淡珊瑚色
t.pensize(branch / 3)
elif branch < 8:
if random.randint(0, 1) == 0:
t.color('snow')
else:
t.color('lightcoral') # 淡珊瑚色
t.pensize(branch / 2)
else:
t.color('sienna') # 赭(zhě)色
t.pensize(branch / 10) # 6
t.forward(branch)
a = 1.5 * random.random()
t.right(20 * a)
b = 1.5 * random.random()
Tree(branch - 10 * b, t)
t.left(40 * a)
Tree(branch - 10 * b, t)
t.right(20 * a)
t.up()
t.backward(branch)
t.down()
# 掉落的花瓣
def Petal(m, t):
for i in range(m):
a = 200 - 400 * random.random()
b = 10 - 20 * random.random()
t.up()
t.forward(b)
t.left(90)
t.forward(a)
t.down()
t.color('lightcoral') # 淡珊瑚色
t.circle(1)
t.up()
t.backward(a)
t.right(90)
t.backward(b)
# 绘图区域
t = T.Turtle()
# 画布大小
w = T.Screen()
t.hideturtle() # 隐藏画笔
t.getscreen().tracer(5, 0)
w.screensize(bg='wheat') # wheat小麦
t.left(90)
t.up()
t.backward(150)
t.down()
t.color('sienna')
# 画樱花的躯干
Tree(60, t)
# 掉落的花瓣
Petal(200, t)
w.exitonclick()

喜欢的小伙伴可以去运行一下,再次声明一下,上面两个复杂算法,是其他的人写的。

到此这篇关于python绘制神器五角星+小黄人+樱花的文章就介绍到这了,更多相关python绘制内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python&Matlab实现樱花的绘制

    目录 1.锦短情长 2. 一场樱花雨(Matlab) 3.樱花树(Python) 1.锦短情长 为什么选择这个标题,借鉴了一封情书里面的情长纸短,还吻你万千. 锦短情长 都只谓人走茶凉,怎感觉锦短情长? 一提起眼泪汪汪,是明月人心所向? 2. 一场樱花雨(Matlab) function pingba hold on,axis equal axis(0.5+[-10,50,0,50]) set(gca,'xtick',[],'ytick',[],'xcolor','w','ycolor','w'

  • 使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例

    今天为大家介绍几个Python"装逼"实例代码,python绘制樱花.玫瑰.圣诞树代码实例,主要使用了turtle库 Python绘制樱花代码实例 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, t): time.sleep(0.0005) if branch > 3: if 8 <= branch <= 12:

  • 用python绘制樱花树

    黑夜可能漫长,但总会迎来温暖的阳光,三月如期而至,武大的樱花又一次盛开.那么今天就一起来看看怎样在python中画一棵美丽的樱花树- 说到用python画画,那当然就是小乌龟Turtle库了,为啥是turtle呢,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形. 一.安装与引入 安装没有什么难度直接pip安装就可以 pip install turtle 可使用以下3种方法引入: 二.使用

  • Python利用Turtle库绘制一颗樱花树

    后唐李煜曾说道,樱花落尽春将困,秋千架下归时.漏暗斜月迟迟,花在枝.樱花落尽的时候春天也将过去了,秋千架下归去时.天上的斜月姗姗来迟,花还在枝头. 关于python画图相关的,我们一直使用的是turtle来画,用专业的非标准库来做专业的事儿.将需要使用到的内置库或者非标准库全部都导入到当前的代码块中. from time import sleep # 用于控制程序运行时的阻塞停顿 from turtle import * # 绘图相关接口 import random # 生成随机数 设置全局需要

  • python绘制神器五角星+小黄人+樱花

    目录 前言 绘制五角星 小黄人绘制案例 樱花案例 前言 这期文章我就为大家介绍关于python的艺术美——画图神器 在数学中有一种美,叫几何美,我们又称为艺术美,用具有规律的线条,迭代出美丽的图片,这就是许多艺术家在创作是的灵感渠道.下面我们就为大家准备了一个简单的五角星绘制. 涉及第三库的导入,模块的导入,还有一些我想我现在也介绍不完,下面就让我们一起来领略美感吧! 绘制五角星 import turtle def draw_recursive_pentargram(size): ''' 迭代绘

  • Python绘制地理图表可视化神器pyecharts

    目录 地图 地图模板系列 中国地图 省份数据地图(重庆地图) 中国城市地图数据地图(分段型) 世界地图 中国地图带城市(详细) 中国连续数据地图 复杂地图观赏 地图 这期文章我们一起来看看地图是如何绘制的,如何在地图里面添加数据进行多维度的展示,下面我们一起来感受一下地图的魅力吧! “地图就是依据一定的数学法则,使用制图语言,通过制图综合,在一定的载体上,表达地球(或其他天体)上各种事物的空间分布.联系及时间中的发展变化状态的图形. 地图的特征包括:由于特殊的数学法则而产生的可量测性:由于使用符

  • Python绘制的爱心树与表白代码(完整代码)

    Python给女朋友带来的快乐 用的的开发工具为pycham,pycham也是广泛用于做Python开发的工具.运用的turtle库,当然了如果是安装了anaconda3这个库那更好,以为这里面有我们会做Python程序设计时用到的大部分的库,turtle它是python中一个绘制图像的函数库,可以用它来绘制很多的东西,比如简单的小黄人.玫瑰花等,这个库也可以生说是一只马良的神笔的吧.比如以下是为女朋友准备的小小的惊喜吧. 1.爱心树 import turtle import random de

  • Python绘制K线图之可视化神器pyecharts的使用

    K线图 概念 股市及期货市bai场中的K线图的du画法包含四个zhi数据,即开盘dao价.最高价.最低价zhuan.收盘价,所有的shuk线都是围绕这四个数据展开,反映大势的状况和价格信息.如果把每日的K线图放在一张纸上,就能得到日K线图,同样也可画出周K线图.月K线图.研究金融的小伙伴肯定比较熟悉这个,那么我们看起来比较复杂的K线图,又是这样画出来的,本文我们将一起探索K线图的魅力与神奇之处吧! K线图 用处 K线图用处于股票分析,作为数据分析,以后的进入大数据肯定是一个趋势和热潮,K线图的专

  • Python绘制地图神器folium的新人入门指南

    一.简介 想通过 Python 绘制精美的地图?想在地图上自由的设置各种参数?想获得灵活的交互体验?这里就有一款Python 神包满足你:folium. folium 建立在 Python 生态系统的数据应用能力和 Leaflet.js 库的映射能力之上,在Python中操作数据,然后通过 folium 在 Leaflet 地图中可视化. folium 相比较于国内百度的 pyecharts 灵活性更强,能够自定义绘制区域,并且展现形式更加多样化. 附:官方文档,官方示例,本文 notebook

  • 详解如何利用Python绘制迷宫小游戏

    目录 构思 绘制迷宫 走出迷宫 完整代码 更大的挑战 关于坐标系设置 周末在家,儿子闹着要玩游戏,让玩吧,不利于健康,不让玩吧,扛不住他折腾,于是想,不如一起搞个小游戏玩玩! 之前给他编过猜数字 和 掷骰子 游戏,现在已经没有吸引力了,就对他说:“我们来玩个迷宫游戏吧.” 果不其然,有了兴趣,于是和他一起设计实现起来,现在一起看看我们是怎么做的吧,说不定也能成为一个陪娃神器~ 先一睹为快: 构思 迷宫游戏,相对比较简单,设置好地图,然后用递归算法来寻找出口,并将过程显示出来,增强趣味性. 不如想

  • Python绘制折线图可视化神器pyecharts案例

    目录 前言 折线图模板系列 自定义标签数据折线图 一天用电量折线图(特定场景) 断点折线图(根据场景进行配置) 双折线图显示最低最高数据标签(不显示其他数据标签) 双折线图显示平均刻度数据标签(数据可显示) 断点折线图(显示数据项) 面积折线图(不紧贴) 3D旋转弹簧图 前言 相信有很多的小伙伴看了如此多个案例之后肯定有所发现,每一个案例都对应着每一个配置,如果是官方配置文档,说实话看起来真的很难,这样通过案例实现来解决各种参数的配置,我觉得有一定的参考价值和学习意义,正所谓“磨刀不误砍工”,如

  • Python可视化神器pyecharts绘制柱状图

    目录 主题介绍 图表参数 主题详解 柱状图模板系列 海量数据柱状图动画展示 收入支出柱状图(适用于记账) 三维数据叠加 柱状图与折线图多维展示(同屏展示) 单列多维数据展示 3D柱状图 主题介绍 pyecharts里面有很多的主题可以供我们选择,我们可以根据自己的需要完成主题的配置,这样就告别了软件的限制,可以随意的发挥自己的艺术细胞了. 图表参数 ''' def add_yaxis( # 系列名称,用于 tooltip 的显示,legend 的图例筛选. series_name: str, #

  • Python可视化神器pyecharts绘制漏斗图

    目录 漏斗图 漏斗图系列模板 尖顶型漏斗图 锥子型漏斗 三角形漏斗 连接型漏斗 漏斗图 漏斗图是由Light等在1984年提出,一般以单个研究的效应量为横坐标,样本含量为纵坐标做的散点图.效应量可以为RR.OR和死亡比或者其对数值等.理论上讲,被纳入Meta分析的各独立研究效应的点估计,在平面坐标系中的集合应为一个倒置的漏斗形,因此称为漏斗图. 样本量小,研究精度低,分布在漏斗图的底部,向周围分散: 样本量大,研究精度高,分布在漏斗图的顶部,向中间集中. 漏斗图法的优点是: 简单易行,只需要被纳

  • Python可视化神器pyecharts之绘制箱形图

    目录 箱形图 概念 用处 箱形图系列模板 第一个箱形图 复杂一点的图例 箱形图 概念 后面的图形都是一些专业的统计图形,当然也会是我们可视化的对象. 箱形图(Box-plot)又称为盒须图.盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图.因形状如箱子而得名.在各种领域也经常被使用,常见于​​品质管理​​.它主要用于反映原始数据分布的特征,还可以进行多组数据分布特征的比 较.箱线图的绘制方法是:先找出一组数据的上边缘.下边缘.中位数和两个四分位数:然后, 连接两个四分位数画出箱体:再将

随机推荐