Python趣味绘图案例
文章目录
- 系列文章
- 趣味绘图案例
- 1. 绘制简单的正方形
- 2. 绘制五角星
- 3. 绘制同心圆
- 4. 绘制彩虹弧
- 5. 绘制螺旋线
- 6. 绘制六边形
- 7. 绘制花形图案
- 8. 绘制波浪线
- 9. 绘制柱状图
- 10. 绘制饼图
系列文章
| 序号 | 直达链接 |
| 表白系列 | |
| 1 | Python制作一个无法拒绝的表白界面 |
| 2 | Python满屏飘字表白代码 |
| 3 | Python无限弹窗满屏表白代码 |
| 4 | Python李峋同款可写字版跳动的爱心 |
| 5 | Python流星雨代码 |
| 6 | Python漂浮爱心代码 |
| 7 | Python爱心光波代码 |
| 8 | Python普通的玫瑰花代码 |
| 9 | Python炫酷的玫瑰花代码 |
| 10 | Python多彩的玫瑰花代码 |
| 节日系列 | |
| 1 | Python动漫风烟花秀代码 |
| 2 | Python新年烟花秀代码 |
| 3 | Python圣诞礼物代码 |
| 4 | Python画圣诞树代码 |
| 5 | Python可爱版圣诞树丨绿色 |
| 6 | Python可爱版圣诞树丨粉色 |
| 7 | Python大雪纷飞代码 |
| 8 | Python生日蛋糕代码 |
| 9 | Python五彩气球代码 |
| 10 | Python国庆祝福代码 |
| 11 | Python万圣礼物代码 |
| 12 | Python愚人节礼物代码 |
| 13 | Python浪漫星空代码 |
| 14 | Python樱花树代码 |
| 动漫系列 | |
| 1 | Python名侦探柯南 |
| 2 | Python喜羊羊 |
| 3 | Python懒羊羊 |
| 4 | Python沸羊羊 |
| 5 | Python小灰灰 |
| 6 | Python小香香 |
| 7 | Python灰太狼 |
| 8 | Python海绵宝宝 |
| 9 | Python哆啦A梦 |
| 10 | Python凯蒂猫 |
| 11 | Python猫和老鼠 |
| 12 | Python草莓熊 |
| 13 | Python迷你皮卡丘 |
| 14 | Python高级皮卡丘 |
| 15 | Python豪华皮卡丘 |
| 16 | Python史迪仔 |
| 17 | Python小熊猫 |
| 18 | Python蜘蛛侠 |
| 19 | Python可爱版蜡笔小新 |
| 20 | Python萌萌的蜡笔小新 |
| 21 | Python罗小黑 |
| 22 | Python猪猪侠 |
| 炫酷系列 | |
| 1 | Python张万森下雪了 |
| 2 | Python一闪一闪亮晶晶 |
| 3 | Python黑客帝国代码雨 |
| 4 | Python七彩花朵 |
| 5 | Python模拟3D星空 |
| 6 | Python金榜题名 |
| 7 | Python满天星 |
趣味绘图案例
以下是十个Python绘图案例代码,每个案例都附有简要分析。
1. 绘制简单的正方形
import turtlet = turtle.Turtle()
for _ in 4:t.forward(100)t.right(90)turtle.done()
分析: 该代码使用Turtle库绘制一个简单的正方形。通过for循环,乌龟前进100单位,然后右转90度,共计执行四次,形成一个正方形。Turtle库是用于绘制图形的便捷工具,适合简单的几何图形绘制。
2. 绘制五角星
import turtlet = turtle.Turtle()
for _ in range(5):t.forward(150)t.right(144)turtle.done()
分析: 此代码利用Turtle库绘制一个五角星。通过循环,乌龟每次前进150单位,并按144度的角度转弯,五次后即可绘制出完整的五角星形状。此角度是由360度/5计算得出,适用于绘制星形。
3. 绘制同心圆
import turtlet = turtle.Turtle()
for i in range(5):t.circle(50 + i*20)t.penup()t.goto(0, -(i+1)*20)t.pendown()turtle.done()
分析: 该代码绘制了5个同心圆。通过改变圆的半径和位置,每次绘制圆后通过penup和pendown移动到下一个圆的位置,从而实现同心圆的效果。
4. 绘制彩虹弧
import turtlet = turtle.Turtle()
colors = ['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet']
t.width(5)for i, color in enumerate(colors):t.color(color)t.circle(100 + i*10, 180)turtle.done()
分析: 该代码通过绘制不同颜色的半圆,模拟彩虹弧。每个半圆的半径逐渐增大,并使用不同的颜色,使其形成彩虹的渐变效果。circle函数中的180度用于绘制半圆。
5. 绘制螺旋线
import turtlet = turtle.Turtle()
for i in range(100):t.forward(i * 2)t.right(30)turtle.done()
分析: 该代码绘制了一个螺旋线图案。乌龟每次前进的距离随着循环次数增加,并且每次右转30度,最终形成不断扩展的螺旋线条。此图形的扩展性较强,适合螺旋类图案的绘制。
6. 绘制六边形
import turtlet = turtle.Turtle()
for _ in range(6):t.forward(100)t.right(60)turtle.done()
分析: 该代码利用Turtle库绘制一个六边形。每次前进100单位并右转60度,循环6次后,乌龟将形成一个正六边形。通过改变边数和角度,可以绘制任意多边形。
7. 绘制花形图案
import turtlet = turtle.Turtle()
for _ in range(36):t.circle(50)t.right(10)turtle.done()
分析: 该代码通过绘制多个圆并每次右转10度,形成一个花形图案。每个圆的中心位置不同,通过连续绘制多个重叠的圆形,最终形成对称的花形图案。
8. 绘制波浪线
import matplotlib.pyplot as plt
import numpy as npx = np.linspace(0, 10, 1000)
y = np.sin(x)plt.plot(x, y)
plt.show()
分析: 此代码使用Matplotlib库绘制了一个简单的正弦波图。通过NumPy生成0到10之间的1000个等距点,并计算相应的正弦值。最终用plot函数将其绘制成波浪状的正弦曲线。
9. 绘制柱状图
import matplotlib.pyplot as pltx = ['A', 'B', 'C', 'D']
y = [5, 7, 3, 8]plt.bar(x, y)
plt.show()
分析: 该代码使用Matplotlib库绘制了一个简单的柱状图。x表示柱状图的类别,y表示相应的值,通过bar函数将类别和数值对应的柱状条显示出来,适合用于数据比较。
10. 绘制饼图
import matplotlib.pyplot as pltlabels = ['Apple', 'Banana', 'Cherry', 'Date']
sizes = [30, 20, 25, 25]plt.pie(sizes, labels=labels, autopct='%1.1f%%')
plt.show()
分析: 该代码使用Matplotlib库绘制了一个饼图。labels表示不同的类别,sizes表示每个类别的占比。pie函数通过计算每个类别的百分比,绘制对应的扇形图,并在图上显示百分比数据。
相关文章:
Python趣味绘图案例
文章目录 系列文章趣味绘图案例1. 绘制简单的正方形2. 绘制五角星3. 绘制同心圆4. 绘制彩虹弧5. 绘制螺旋线6. 绘制六边形7. 绘制花形图案8. 绘制波浪线9. 绘制柱状图10. 绘制饼图 系列文章 序号直达链接表白系列1Python制作一个无法拒绝的表白界面2Python满屏飘字表白代码3Pyt…...
P3588 [POI2015] PUS
~~~~~ P3588 [POI2015] PUS ~~~~~ 总题单链接 思路 ~~~~~ 这道题的关键点在于线段树优化建图。 ~~~~~ 对每条限制新建一个虚电 p p p,将输入的 x 1 ∼ k x_{1\sim k} x1∼k 连向 p p p,再将 p p p 连向区间内单的其他点,建完图后拓扑排…...
指针(四)
指针和数组笔试题解析 一维数组 字符数组 (没有\0) 字符数组(有\0) 重点讲一下printf("%d\n", strlen(*p)); 这个strlen函数中是从地址开始寻找,而非元素本身;假设计算的是元素本…...
0902,DEQUE,LIST,VECTOR
目录 01_vector.cc 02_vector.cc 作业 01STL包括哪些组件?各自具有哪些特点? 02 序列式容器包括哪些?他们之间有哪些异同? 03 下面程序有什么错误? 04 创建和初始化vector的方法,每种都给出一个实例…...
LeetCode 每日一题 2024/9/2-2024/9/8
记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 9/2 3153. 所有数对中数位不同之和9/3 2708. 一个小组的最大实力值9/4 2860. 让所有学生保持开心的分组方法数9/5 3174. 清除数字9/6 3176. 求出最长好子序列 I9/7 3177. 求…...
Linux中的Vim文本编辑器
Linux中的Vim是一个非常强大的文本编辑器,它提供了丰富的命令来支持各种文本编辑操作。以下是一个Vim常用命令的详细总结,涵盖了基本操作、编辑命令、移动光标、查找替换、保存退出等多个方面。 一、基本操作 启动Vim vim:直接启动Vim编辑器…...
rancher搭建k8s及jenkins自动化部署
1、准备环境 角色IP用途k8s-rancher-master192.168.3.63master节点k8s-rancher-node01192.168.3.64node节点k8s-rancher-node02192.168.3.66node节点k8s-rancher-server192.168.2.33rancher-server节点注: 服务器名需要配置不同,相同服务器名不能加入node节点 在所有节点进行…...
vue el-dialog嵌套解决无法点击问题
产生原因: 当你在 el-dialog 上嵌套另一个 el-dialog 窗口时,可能会遇到内部对话框无法点击的问题。这通常是由于嵌套对话框的遮罩层(overlay)或其他样式问题造成的。 解决方案: 如果你的 el-dialog 组件支持 append-to-body 属性ÿ…...
c# c++程序 交互
目录 一、两种不同程序写的进程交互 1、定义交互消息 2、定义C进程发来的消息ID 3、定义C进程交互的句柄 及给C进程发送的消息ID 4、定义交互消息所需的数据类型 5、引入所需的系统函数 6、给主进程发消息 7、写入本进程主窗口句柄 8、处理发来的交互消息 一、两种不…...
解决ruoyi框架中使用pagehelper插件分页查询后对数据进行对象转换后失效问题
一、场景重现 使用rouyi框架时,可以看到很多分页查询,如: //-----------SysConfigController------------- GetMapping("/list") public TableDataInfo list(SysConfig config) {startPage();List<SysConfig> list config…...
RabbitMQ 应用
文章目录 前言1. Simple 简单模式2. Work Queue 工作队列模式3. Pubulish/Subscribe 发布/订阅模式Exchange 的类型 4. Routing 路由模式5. Topics 通配符模式6. RPC RPC通信7. Publisher Confirms 发布确认1. 单独确认2. 批量确认3. 异步确认 前言 前面我们学习了 RabbitMQ 的…...
使用Python读取Excel数据的详细指南
在数据分析中,Excel文件是一种常见的数据存储格式。使用Python读取Excel数据可以帮助我们更方便地进行数据处理和分析。本文将介绍如何在Python 2和Python 3中读取Excel数据,具体步骤和代码示例详细说明。 准备工作 在开始之前,请确保你已经…...
VitePress 动态路由与路径加载器详解
在使用 VitePress 构建静态网站时,动态路由功能允许我们通过单个 Markdown 文件和动态数据生成多个页面。本文将详细介绍如何使用动态路由以及路径加载器文件来生成这些页面,并提供实例代码和解释说明。 动态路由基础 动态路由的核心在于使用带有参数的…...
C#编程语言及.NET 平台快速入门指南
Office Word 不显示 Citavi 插件,如何修复?_citavi安装后word无加载项-CSDN博客 https://blog.csdn.net/Viviane_2022/article/details/128946061?spm1001.2100.3001.7377&utm_mediumdistribute.pc_feed_blog_category.none-task-blog-classify_ta…...
高等代数精解【9】
文章目录 向量空间与矩阵矩阵的行列式矩阵A的秩保持不变方阵的行列式线性无关的条件1. 线性组合为零向量的唯一性2. 矩阵的秩3. 几何解释(对于二维和三维空间)4. 行列式(对于方阵)总结 矩阵的非零子式基础重要性例子注意事项 非奇…...
谷粒商城の缓存篇
文章目录 前言一、本地缓存和分布式缓存1.本地缓存2.分布式缓存 二、项目实战1.配置Redis2.整合业务代码2.1 缓存击穿2.2 缓存雪崩2.3 缓存穿透2.4 业务代码1.0版2.5 分布式锁1.0版2.6 分布式锁2.0版2.7 Spring Cache及缓存一致性问题2.7.1 Spring Cache2.7.2 缓存一致性问题2.…...
永远学习:为什么人工智能难以适应新挑战
理解深度学习的局限性并追求真正的持续适应 欢迎来到雲闪世界。 “智者适应环境,正如水适应水瓶。”——中国谚语 “适应或灭亡,现在和以往一样,是大自然的必然法则。”——赫伯特乔治威尔斯 近年来,人工智能取得了长足的进步。所…...
【spring】 Jackson :@JsonIgnore 注解
@JsonIgnore 是 Jackson 库中的一个注解,用于在序列化和反序列化过程中忽略某个字段。也就是说,当对象被转换为 JSON 或从 JSON 转换为对象时,带有 @JsonIgnore 注解的字段将不会被包含在内在这个示例中,ignoredField 字段将不会出现在生成的 JSON 字符串中。 import com.…...
Dependencies与DependencyManagement的区别
现在Maven项目管理,在开发中时比较常用的,在一些项目汇总遇到依赖冲突的问题之后,还是没有能有一个很好的解决办法,这次就来看看在使用Maven管理依赖的过程中dependencies与dependencyManagement的区别。 DepencyManagement应用场…...
git svn 日记
1. git log -p -1 --name-only 该命令用于查看最新的一次提交记录的详细信息,包括文件更改情况。 git log:显示 Git 仓库的提交历史。-p:显示每次提交的差异 (diff),也就是文件内容的修改部分。-1:表示只显示最近的一…...
跨平台文件同步:OpenClaw+千问3.5-9B实现智能归档
跨平台文件同步:OpenClaw千问3.5-9B实现智能归档 1. 为什么需要智能文件同步? 作为一个经常在MacBook、Windows台式机和Linux服务器之间切换的开发者,我长期被文件同步问题困扰。传统的同步工具(如rsync或Syncthing)…...
OpenClaw+千问3.5-35B-A3B-FP8:智能邮件分类回复系统
OpenClaw千问3.5-35B-A3B-FP8:智能邮件分类回复系统 1. 为什么需要自动化邮件处理 每天早晨打开邮箱,看到堆积如山的未读邮件时,那种窒息感我太熟悉了。作为技术从业者,我的邮箱常年被订阅的技术周报、开源项目更新、会议邀请函…...
告别连接难题:Windows 11下Multisim主数据库稳定运行终极配置指南
1. Windows 11下Multisim主数据库连接失败的根源分析 每次打开Multisim 14.0,看着那个"主数据库连接失败"的红色警告框,是不是特别想砸键盘?作为一个在电子仿真领域摸爬滚打多年的老鸟,我太理解这种崩溃了。经过反复测试…...
7×24小时运行保障:OpenClaw+Qwen3-14B镜像的进程守护方案
724小时运行保障:OpenClawQwen3-14B镜像的进程守护方案 1. 为什么需要进程守护? 去年冬天,我部署了一个OpenClaw自动化流程来整理技术文档。某天凌晨3点,系统突然崩溃,导致第二天早上发现8小时的工作成果全部丢失。这…...
开关电源EMI滤波设计:如何通过Cx、Cy电容精准抑制共模与差模干扰?
1. 开关电源EMI干扰的本质与分类 每次拆开电子设备,你肯定见过那块布满电容电感的小板子——它就是EMI滤波器。作为开关电源设计中最让人头疼的部分,EMI问题就像电路里的"噪音污染"。我当年第一次做电源适配器时,传导测试超标20dB&…...
APDS9999传感器驱动开发:寄存器配置、中断与FreeRTOS集成
1. Arduino_APDS9999 库深度解析:面向嵌入式工程师的环境光、色彩与接近度传感器驱动开发指南APDS9999 是 Broadcom(原 Avago)推出的高集成度光学传感器芯片,集环境光感知(ALS)、RGB 色彩识别(C…...
STM32H7 USB复合设备库:CDC+MSC+SDMMC一体化固件
1. 项目概述 usb_composite 是一款面向 STM32H7 系列微控制器(已验证 H743、H750)的即插即用型 USB 复合设备固件库,基于 TinyUSB 0.15.0 构建。其核心目标是将 CDC(通信设备类)、MSC(大容量存储类&#…...
8类草莓成熟病害检测数据集该数据集通过实际工业农场采集拥有图像1724张可使用YOLOV5、YOLOV6、YOLOV7、YOLOV8模型进行直接训练数据集为原始数据集,未经任何图像预处理已经
8类草莓成熟病害检测数据集 该数据集通过实际工业农场采集 拥有图像1724张 可使用YOLOV5、YOLOV6、YOLOV7、YOLOV8模型进行直接训练 数据集为原始数据集,未经任何图像预处理 已经划分为训练集,验证集和测试集,可直接使用,检测精度…...
9.3LED点阵屏显示动画
#include <REGX52.H> #include "Delay.h" #include "MatrixLED.h"//动画数据 unsigned char code Animation[]{0x3C,0x42,0xA9,0x85,0x85,0xA9,0x42,0x3C,0x3C,0x42,0xA1,0x85,0x85,0xA1,0x42,0x3C,0x3C,0x42,0xA5,0x89,0x89,0xA5,0x42,0x3C, };void…...
5分钟搞定GLM-4.7-Flash:Web界面+API调用,小白也能轻松上手
5分钟搞定GLM-4.7-Flash:Web界面API调用,小白也能轻松上手 1. 前言:为什么选择GLM-4.7-Flash 如果你正在寻找一个强大且易于使用的中文大语言模型,GLM-4.7-Flash绝对值得考虑。作为智谱AI最新推出的开源模型,它采用了…...
