问题:用circle画圆形
1.numpy+Matplotlib
numpy库,这是是Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
在应用方面,NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用, 这种组合广泛用于替代 MatLab,是一个强大的科学计算环境,有助于我们通过 Python 学习数据科学或者机器学习。
import numpy as np #导入数据包主要处理数据
import matplotlib.pyplot as plt #导入图形包
x=y=np.arange(-30,30,0.1) #函数返回一个有终点和起点的固定步长的排列
x,y=np.meshgrid(x,y) #生成网格点坐标矩阵
# plt.axes().set_facecolor('yellow') #更改轴背景
#更改绘图背景
fig=plt.figure() #创建图形
fig.patch.set_facecolor('blue')
fig.patch.set_alpha(0.6)
ax=fig.add_subplot(111) #创建轴对象
ax.patch.set_facecolor('yellow')
# ax.patch.set_alpha(1.0) #轴对象的alpha设置为1.0,这意味着完全不透明
ax.patch.set_alpha(0.0) #轴背景现在是透明的。
for i in range(1,30,2):
plt.contour(x,y,x**2+y**2,[i**2]) #x**2+y**2=9
plt.axis('scaled') #不加会受挤压成椭圆
plt.show() #展示
(1)更改轴背景

(2) 更改绘图背景

(3) 轴背景透明

1.turtle库(海龟画图)
| turtle相关命令: | |
| turtle.fd() fd=forward | 向前走直线 |
| turtle.bk() bk=back | 向后走直线 |
| turtle.left() | 向左转,传入角度 |
| turtle.right() | 向右转 |
| turtle.seth() | 转向角度 |
| turtle.pensize() | 设置画笔粗细 |
| turtle.color() | 设置画笔变色 |
| turtle.pu() | pu—pen(画笔)+up(拿起),把画笔抬起来,之后画笔的移动不会在纸面上留下痕迹。 |
| turtle.goto(x,y) | 把画笔拿到画布的坐标点(x,y)去 |
| turtle.pd() | pd—pen(画笔)+down(放下),把画笔落下了,之后画笔移动就会在画布上留下痕迹。 |
|
turtle.done() | 这个语句是个固定格式,有这句话画完图,绘图窗口还保留,如果没有这句话,绘图窗口就直接关闭 |
| 其他命令: | |
|
turtle.setup() | 设置绘图窗口大小和位置。 |
|
turtle.colormode() | 颜色模式RGB还是英文 |
| turtle.speed() | 画笔速度 |
(1)正六边形
import turtle as t
for i in range(6):
t.fd(100)
t.left(60)
t.done()

(2)两个圆
import turtle as t
t.pensize(3) #画笔的粗细为3个像素
t.color('blue')
t.circle(30,360)
t.pu()
t.goto(60,0) #把画笔拿到画布的坐标点(60,0)去
t.pd()
t.color('black')
t.circle(30,360) #半径是30像素,画360度
t.done()

(3)同心圆
if __name__=='__main__':
import turtle as t
t.pensize(1)
t.Turtle().color('yellow')
t.Turtle().width(100)
for i in range(0,100,5):
t.up()
t.goto(0,-i)
t.pd()
# t.color('black')
t.circle(i,360)
t.done()

3.GUI工具包——tkinter
if __name__ == '__main__':
from tkinter import * #调用方法
Tk().title('Canvas')
canvas = Canvas(width=800, height=600, bg='yellow') #创建画布
canvas.pack(expand=YES, fill=BOTH) #激活画布,pack函数的作用是让画布显示中正确的位置上。如果没调用这个函数,就不会正常地显示任何东西。
k = 1
j = 1
for i in range(0, 26):
canvas.create_oval(300 - k, 250 - k, 300 + k, 250 + k, width=1) #画圆
k += j
j += 0.3
mainloop() #启动界面

本文介绍了使用Python的numpy+Matplotlib库和turtle库进行绘图的方法,包括更改轴背景、绘图背景透明以及绘制正六边形、同心圆等图形。
1万+

被折叠的 条评论
为什么被折叠?



