我正在使用QuTiP绘制一个布洛赫球体图形。我想给它一个标题。我该怎么做呢?我在谷歌上搜索,但没有找到答案。
发布于 2019-01-19 19:21:02
您将需要在matploltib中将Bloch球体渲染到3D图形中的轴。下面是一个如何做到这一点的示例:
import matplotlib.pyplot as plt
import quitp
# needs Axes3D object to activate the '3d' projection
from mpl_toolkits.mplot3d import Axes3D
fig, ax = plt.subplots(figsize=(5, 5), subplot_kw=dict(projection='3d'))
ax.axis('square') # to get a nice circular plot
b1 = qutip.Bloch(fig=fig, axes=ax)
b1.add_states(qutip.sigmax()/2)
b1.zlabel = ['z', '']
b1.render(fig=fig, axes=ax) # render to the correct subplot
# set title for the axis
ax.set_title('TITLE goes here', y=1.1, fontsize=20)
# You can anything else you want to the axis as well!
ax.annotate('TEXT', xy=(0.1, 0.9), xytext=(0.1, 0.7), xycoords='axes fraction',
fontsize=15, color='r', ha='center',)
plt.show()下面是输出:

理想情况下,一旦我们在对Bloch的调用中设置了fig和ax,它就应该自动绘制到正确的轴上,但是render函数默认设置为fig=None, axis=None。这可能是一个小错误。
https://stackoverflow.com/questions/54002534
复制相似问题