标签:Excel与Python,PY函数
Excel引入PY函数后,我们可以将其当作一个Python代码编辑器,用来编写和执行Python代码。
选择一个单元格,在其中输入:
=py
按Tab键。此时,就可以在其中输入Python代码了。
如下图1所示。选择单元格C2,输入:=py,按Tab键,然后输入代码:
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(-100, 100, 50)y_sin = [np.sin(i) for i in x]plt.plot(x, y_sin, 'bo-')plt.show()
按Ctrl+Enter组合键,执行代码,结果生成了一个Python Image对象。

图1
保持选中该单元格(即示例单元格C2),单击公式编辑栏左侧的下拉箭头,从中选取“Excel值”,如下图2所示。

图2
可以看到,该单元格中有一个图片,如下图3所示。

图3
我们可以放大显示这个图片。在该单元格中,单击右键,从快捷菜单中选择“单元格中的图片——创建引用”,如下图4所示。

图4
结果如下图5所示。

图5
可以看到,上述代码在Excel中绘制了正弦函数的折线图。
按照上述步骤,在PY函数单元格中输入下面的代码:
import matplotlib.pyplot as pltimport numpy as npimport mathx= np.linspace(-100, 100, 50)y_sin= [np.sin(i) for i in x]y_cos= [np.cos(i) for i in x]y_tan= [np.tan(i) for i in x]y_log= [np.log(i) for i in x]y_exp= [np.exp(i) for i in x]y_sqr= [i*i for i in x]plt.rcParams["figure.figsize"]= [12,8]plt.subplot(2,3,1)plt.plot(x,y_sin, 'bo-')plt.subplot(2,3,2)plt.plot(x,y_cos, 'rx-')plt.subplot(2,3,3)plt.plot(x,y_tan, 'g*-')plt.subplot(2,3,4)plt.plot(x,y_log, 'y<-')plt.subplot(2,3,5)plt.plot(x,y_exp, 'g')plt.subplot(2,3,6)plt.plot(x,y_sqr, 'r*-')plt.show()
按Ctrl+Enter组合键执行代码后,将会得到一个两行三列排列的6个折线图,如下图6所示。

图6
夜雨聆风