可视化¶
可视化是可选层,Matplotlib 只在调用时延迟导入。
python -m pip install "latticegeom[plot]"
基本绘图¶
import matplotlib.pyplot as plt
from latticegeom import kagome
lat = kagome((3, 3), pbc=True)
ax = lat.plot(
draw_plaquettes=True,
plaquette_arrows=True,
site_labels=True,
)
ax.set_title("Typed Kagome geometry")
plt.show()
Lattice.plot 是 plot_lattice 的薄封装。二者都返回普通 Matplotlib axes,
且不会调用 show()。
周期显示模式¶
periodic= 控制穿越有限模拟盒的关系:
"unfold"把端点放在真实周期像中,是默认模式;"hide"隐藏跨边界 bond 和 plaquette;"fold"用虚线连接折回后的有限 site。
检查 super_idx 时应使用 unfold,紧凑总览图可使用 fold。还可用
show_periodic_sites、show_boundary、show_unit_cell 与 show_basis
补充几何背景。
类型、方向与反向 bond¶
site、bond 与 plaquette 颜色按几何类型分配,可用 site_colors=、
bond_colors= 或 plaquette_colors= 覆盖指定类型。bond 箭头显示声明方向;
plaquette_arrows=True 显示保存的 loop 方向。
include_reverse=True 可绘制派生反向 bond,而不把它们加入规范几何。方向无关时可
设置 arrows=False,使用批量线段绘制。
外部数值¶
模型结果可直接标注而不修改晶格:
lat.plot(
bond_values=phase_by_bond,
plaquette_values=flux,
value_format=".3f",
)
bond 数值与规范 bond 行一一对应;显示反向 bond 时复用对应规范值。plaquette 数值 必须与编译后的 plaquette 数量一致。
嵌入晶格¶
一维晶格会画在水平轴上。笛卡尔嵌入维数高于二维时,需要指定两个不同分量:
lat.plot(projection=(0, 2))
绘图只是基于公开编译数组的诊断视图;Lattice 不保存色图、artist 或渲染状态。