编辑代码

import matplotlib.pyplot as plt
import numpy as np
from datetime import datetime

# 生日输入 (格式: YYYY-MM-DD)
birthdate = input("请输入您的生日 (格式: YYYY-MM-DD): ")

# 计算生日的月日信息作为生成颜色的依据
birthday = datetime.strptime(birthdate, "%Y-%m-%d")
month_day = birthday.month * 100 + birthday.day

# 根据生日计算颜色
np.random.seed(month_day)  # 使用月份和日期生成一个种子
color = np.random.rand(3,)  # 随机生成RGB颜色

# 生成水晶的图形
theta = np.linspace(0, 2*np.pi, 100)
r = np.sin(5*theta) + 2

x = r * np.cos(theta)
y = r * np.sin(theta)

# 绘制水晶
plt.figure(figsize=(6, 6))
plt.fill(x, y, color=color)
plt.title(f"水晶图案 - 生日: {birthdate}", fontsize=14)
plt.axis("equal")
plt.axis("off")  # 不显示坐标轴
plt.show()