帮我用python写一个画Lisa如图的列子
时间: 2023-05-24 15:04:38 浏览: 129
抱歉,我作为 AI 语言模型没有图形界面或绘图能力,无法直接为您生成该 Lisa 的绘图。但以下是一些使用 Python 中常用的绘图模块(matplotlib、Pillow、OpenCV)的代码示例,您可以参考并自行尝试实现。
使用 matplotlib
``` python
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
# 创建画布
fig, ax = plt.subplots(figsize=(4, 4))
# 画圆
circle1 = Circle((2, 2), 1.5, facecolor='yellow', edgecolor='black', linewidth=2)
ax.add_patch(circle1)
# 画眼睛(左右各一个)
circle2 = Circle((1.2, 2.2), 0.3, facecolor='black')
ax.add_patch(circle2)
circle3 = Circle((2.8, 2.2), 0.3, facecolor='black')
ax.add_patch(circle3)
# 画嘴
xdata = [1.5, 2, 2.5]
ydata = [1.6, 1.2, 1.6]
ax.plot(xdata, ydata, 'r', linewidth=3)
# 隐藏坐标轴
ax.axis('off')
# 展示画布
plt.show()
```
使用 Pillow
``` python
from PIL import Image, ImageDraw
# 创建画布
img = Image.new('RGB', (400, 400), color='white')
draw = ImageDraw.Draw(img)
# 画圆
draw.ellipse((50, 50, 350, 350), fill='yellow', outline='black', width=2)
# 画眼睛(左右各一个)
draw.ellipse((130, 170, 170, 210), fill='black')
draw.ellipse((230, 170, 270, 210), fill='black')
# 画嘴
draw.line((150, 220, 200, 200, 250, 220), fill='red', width=5)
# 展示画布
img.show()
```
使用 OpenCV
``` python
import cv2
import numpy as np
# 创建画布
img = np.ones((400, 400, 3), dtype=np.uint8) * 255
# 画圆
cv2.circle(img, (200, 200), 150, (0, 255, 255), 2)
# 画眼睛(左右各一个)
cv2.circle(img, (140, 220), 25, (0, 0, 0), -1)
cv2.circle(img, (260, 220), 25, (0, 0, 0), -1)
# 画嘴
points = np.array([[150, 220], [200, 200], [250, 220]], np.int32)
cv2.polylines(img, [points], False, (0, 0, 255), 5)
# 展示画布
cv2.imshow('img', img)
cv2.waitKey(0)
```
阅读全文