当前位置: 首页 > ai >正文

展示了一个三轴(X, Y, Z)坐标系!

等轴测投影”(isometric projection)风格的手绘风格三维图,即三条坐标轴(x₁, x₂, x₃)看起来彼此垂直、等角分布(通常是 120° 夹角),它是常见于教材和数学书籍的 “假三维”表示法。

展示了一个三轴(X, Y, Z)坐标系,并标记了每个坐标轴上 5 个刻度值

  • X轴:水平向右(0°)。

  • Y轴:相对于X轴 顺时针120°

  • Z轴:与X轴垂直(90°),竖直向上。

每个轴都标有箭头、刻度线和对应的数字。现在三个轴的方向和刻度均已正确绘制。

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体
plt.rcParams['axes.unicode_minus'] = False    # 正常显示负号
import numpy as npfig, ax = plt.subplots(figsize=(6, 6))
ax.set_aspect('equal')origin = np.array([0, 0])
length = 5# 单位向量
ux = np.array([np.cos(np.radians(0)), np.sin(np.radians(0))])       # X轴:0°
uy = np.array([np.cos(np.radians(-120)), np.sin(np.radians(-120))]) # Y轴:顺时针120°
uz = np.array([np.cos(np.radians(90)), np.sin(np.radians(90))])     # Z轴:垂直向上# 绘制坐标轴
ax.arrow(*origin, *(ux * length), head_width=0.2, length_includes_head=True, color='black')
ax.arrow(*origin, *(uy * length), head_width=0.2, length_includes_head=True, color='black')
ax.arrow(*origin, *(uz * length), head_width=0.2, length_includes_head=True, color='black')# 标注轴名
ax.text(*(ux * (length + 0.3)), 'X', fontsize=12, ha='center', va='center')
ax.text(*(uy * (length + 0.3)), 'Y', fontsize=12, ha='center', va='center')
ax.text(*(uz * (length + 0.3)), 'Z', fontsize=12, ha='center', va='bottom')# 添加刻度
for i in range(1, length + 1):# X轴tick_x = origin + ux * iax.plot([tick_x[0], tick_x[0]], [tick_x[1] - 0.1, tick_x[1] + 0.1], color='black')ax.text(tick_x[0], tick_x[1] - 0.3, str(i), ha='center', va='top', fontsize=10)# Y轴tick_y = origin + uy * ioffset_y = np.array([-uy[1], uy[0]])  # 垂直方向ax.plot([tick_y[0] - 0.1 * offset_y[0], tick_y[0] + 0.1 * offset_y[0]],[tick_y[1] - 0.1 * offset_y[1], tick_y[1] + 0.1 * offset_y[1]], color='black')ax.text(tick_y[0] + 0.25 * offset_y[0], tick_y[1] + 0.25 * offset_y[1],  # 加大偏移避免遮挡str(i), ha='center', va='center', fontsize=10)# Z轴tick_z = origin + uz * iax.plot([tick_z[0] - 0.1, tick_z[0] + 0.1], [tick_z[1], tick_z[1]], color='black')ax.text(tick_z[0] - 0.3, tick_z[1], str(i), ha='right', va='center', fontsize=10)# 范围与外观
ax.set_xlim(-6, 6)
ax.set_ylim(-4, 6)
ax.axis('off')plt.title('三维等轴测投影:X(0°), Y(顺时针120°), Z(90°)')
plt.show()

http://www.xdnf.cn/news/8568.html

相关文章:

  • RAID技术全解析:从基础到实战应用指南
  • 学习STC51单片机14(芯片为STC89C52RC)
  • OpenLayers 加载鹰眼控件
  • Kotlin中let、run、with、apply及also的差别
  • SQL 语言
  • 策略建模:AI系统背后的“心灵感应”技术
  • 一文快速了解Vue3服务端渲染(SSR)
  • Windows逆向工程提升之IMAGE_RESOURCE_DIRECTORY
  • linux taskset 查询或设置进程绑定CPU
  • Vue3的模块化设计: 使用Script Setup API
  • 人脸美颜磨皮祛痘3:深度学习SUNet神经网络实现图片修复(含训练代码、数据集和GUI交互界面)
  • 【MPC控制 - 从ACC到自动驾驶】ACC系统原理与MPC初步认知
  • P3392 涂条纹
  • 零基础学习计算机网络编程----网络基本知识
  • python安装
  • css五边形
  • Spring boot使用
  • Git使用
  • 串扰与反射对信号完整性的影响
  • Spring Boot微服务架构(四):微服务的划分原则
  • 精益数据分析(82/126):先行指标驱动的增长黑客策略——从相关性到因果性的跨越
  • 基于大模型预测的视神经脊髓炎技术方案
  • Java—— IO流的应用
  • Python 爬虫之requests 模块的应用
  • Trae(The Real Al Engineer)
  • SQL每日一练(2)
  • Vue3响应式数据: 深入分析Ref与Reactive
  • React 文件分片上传与下载全解析
  • 听课笔记之中国式现代化导论
  • 提效-点击跳转到源码