Python 作為一種廣泛使用的編程語言,在可視化方面有很多優秀的工具。其中,Matplotlib 常常被用來繪制各種圖表,而其中的 Pyplot 接口允許通過簡單的命令實現各種可視化效果。
在實驗室的場景中,我們經常需要繪制實驗裝置的示意圖或數據的曲線圖。下面將介紹如何使用 Python 和 Matplotlib 的 Pyplot 接口來繪制實驗室場景。
# 導入需要的庫 import matplotlib.pyplot as plt import numpy as np # 繪制實驗室坐標系 x = np.linspace(-10, 10, 100) y = np.linspace(-10, 10, 100) X, Y = np.meshgrid(x, y) Z = np.sqrt(X ** 2 + Y ** 2) fig, ax = plt.subplots() ax.contour(X, Y, Z, colors='black', linewidths=0.5) ax.set_aspect('equal') ax.axhline(y=0, color='black', linewidth=0.5) ax.axvline(x=0, color='black', linewidth=0.5) # 繪制實驗裝置 plt.plot([-5, 5], [5, 5], color='black', linewidth=2) plt.plot([-5, -5], [5, 0], color='black', linewidth=2) plt.plot([5, 5], [5, 0], color='black', linewidth=2) plt.plot([-5, 5], [0, 0], color='black', linewidth=2) # 添加標簽 plt.annotate("光源", xy=(-5, 5), xytext=(-6, 6.5), arrowprops=dict(facecolor='black', shrink=0.05)) plt.annotate("凹透鏡", xy=(0, 0), xytext=(-1.5, 2), arrowprops=dict(facecolor='black', shrink=0.05)) plt.annotate("屏幕", xy=(5, 0), xytext=(4.5, -1.5), arrowprops=dict(facecolor='black', shrink=0.05)) # 顯示圖像 plt.show()
上述代碼首先繪制了一個實驗室的坐標系。使用np.meshgrid
函數生成了坐標系的網格點,用ax.contour
函數繪制了等高線。然后,繪制了一個凹透鏡及其周圍的光線和屏幕。最后,使用plt.annotate
函數添加了標簽,指明圖中各個元素的名稱。運行代碼后,可以得到如下圖所示的實驗室場景。
上一篇python 畫框架圖
下一篇python 畫小叮當