提示信息

通过 Python 随机生成的抽象艺术作品创作

我们都傻 已关注

使用 Python 生成随机抽象艺术作品是一个有趣的项目。你可以利用一些流行的库,如 matplotlibnumpyPIL 来创建图像。这是一个简单的例子,展示如何使用这些工具生成随机的抽象图案:

  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. def generate_random_color():
  4. """Returns a random color as an RGB tuple"""
  5. return np.random.rand(3,)
  6. def draw_random_abstract_art(output_file='abstract_art.png', width=8, height=6, num_shapes=50):
  7. # Create a new figure with specified dimensions
  8. fig, ax = plt.subplots(figsize=(width, height))
  9. # Set a random background color
  10. ax.set_facecolor(generate_random_color())
  11. # Generate random shapes
  12. for _ in range(num_shapes):
  13. shape_type = np.random.choice(['circle', 'rectangle', 'line'])
  14. color = generate_random_color()
  15. if shape_type == 'circle':
  16. # Draw a random circle
  17. circle = plt.Circle(
  18. (np.random.rand(), np.random.rand()), # Center coordinates
  19. np.random.rand() * 0.2, # Radius
  20. color=color,
  21. alpha=np.random.rand()
  22. )
  23. ax.add_patch(circle)
  24. elif shape_type == 'rectangle':
  25. # Draw a random rectangle
  26. rectangle = plt.Rectangle(
  27. (np.random.rand(), np.random.rand()), # Bottom-left corner
  28. np.random.rand() * 0.2, # Width
  29. np.random.rand() * 0.2, # Height
  30. color=color,
  31. alpha=np.random.rand()
  32. )
  33. ax.add_patch(rectangle)
  34. elif shape_type == 'line':
  35. # Draw a random line
  36. line = plt.Line2D(
  37. [np.random.rand(), np.random.rand()],
  38. [np.random.rand(), np.random.rand()],
  39. color=color,
  40. linewidth=np.random.rand() * 5
  41. )
  42. ax.add_line(line)
  43. # Remove axes for a cleaner look
  44. ax.set_xticks([])
  45. ax.set_yticks([])
  46. plt.box(False)
  47. # Save the file and show the image
  48. plt.savefig(output_file, bbox_inches='tight', pad_inches=0)
  49. plt.show()
  50. draw_random_abstract_art()

解释:

  1. 随机颜色生成generate_random_color 函数生成一个随机 RGB 颜色。

  2. 图形生成draw_random_abstract_art 函数随机创建各种形状(圆形、矩形和线条),并为每种形状分配一个随机颜色和透明度。

  3. 绘图:使用 matplotlib 的函数 add_patchadd_line 将形状添加到绘图中。

  4. 保存和显示:通过 plt.savefig 保存图像,并使用 plt.show 展示生成的艺术作品。

可以根据需要调整形状的数量、大小、颜色等参数,以创造出更复杂或更简单的艺术作品。这种生成方式非常灵活,你可以将其扩展为更多类型的形状、模式或者添加其他视觉效果。

    遇到难题? "AI大模型GPT4.0、GPT" 是你的私人解答专家! 点击按钮去提问......
我们都傻 关注 已关注

最近一次登录:2024-11-20 22:19:44   

暂时还没有签名,请关注我或评论我的文章
×
免费图表工具,画流程图、架构图