饿了么|Python+经济学:短期生产函数与图像

饿了么|Python+经济学:短期生产函数与图像

文章图片

饿了么|Python+经济学:短期生产函数与图像

文章图片

饿了么|Python+经济学:短期生产函数与图像

文章图片

饿了么|Python+经济学:短期生产函数与图像

文章图片

饿了么|Python+经济学:短期生产函数与图像

文章图片

饿了么|Python+经济学:短期生产函数与图像


写在前面:
本文灵感源于闲逛时的胡思乱想 , 在初级微观经济学中 , 边际产量函数与平均产量函数的图形都被简化为先递增后递减的倒U形 , 那么可以运用该图形与一元二次函数图像的相似之处 , 先构造出边际产量函数(Marginal Production Function) , 继而“逆推”出总产量函数(Total Production Function)和平均产量函数(Average Production Function)并用Python绘制相应函数图像 。
PS:虽然这种图形用PPT也能简单绘制 , 但对手残党不太友好 。
预备知识:一元二次函数图形性质回顾
一元二次函数

的一般图形呈先递减后递增的U型 , 函数关于

对称 , 而其关于x轴对称的函数为

其关于y轴对称的函数为

本例主要讨论短期生产函数 , 即总产量TotalProduction仅与劳动投入量Labor相关 , 而资本投入量Kapital只是固定值 。 边际产量函数MP是本例的重点:

通过上式可知 , 边际产量曲线关于L=50对称 , 且当L=0时 , MP=0 , 由MP可逆向构造总产量函数与平均产量函数:


代码实现:

import matplotlib.pyplot as plt
import numpy as np
#生产函数的设定与计算
#设定劳动投入量参数 , Labor是一个列表
n = 200
Labor = np.linspace(0110n)
#设定边际产量、平均产量和总产量的空列表备用
MP = [

AP = [

TP = [

【饿了么|Python+经济学:短期生产函数与图像】for i in range(len(Labor)):
#取出Labor中的每个元素赋值给labor , 参与后续计算
labor = Labor[i

#设定资本投入量为固定值50
kapital =50
#从边际产量的表达式开始设定生产函数 , MP→AP→TP
mp = -(labor ** 2) + 100 * labor
ap = -(1 / 3) * labor ** 2 + 50 * labor + (kapital / labor)
tp = -(1 / 3) * labor ** 3 + 50 * labor ** 2 + kapital
#将计算结果写入对应产量的列表
TP.append(tp)
MP.append(mp)
AP.append(ap)
#绘图环节
fig = plt.figure(1figsize=(88))
#绘制第一个图 , 总产量曲线
ax1 = plt.subplot(111)
#下面语句可将所有产量曲线合成显示在一张图中(上下排列)
# ax1 = plt.subplot(211)
ax1.plot(Labor TP'r'label='Total Production')
#设定坐标轴名称
ax1.set_xlabel('Labor')
ax1.set_ylabel('Total Production')
#设定绘图区上边框与右边框不可见 , 且坐标轴交点设定为原点(00)
ax1.spines['top'
.set_visible(False)
ax1.spines['right'
.set_visible(False)
ax1.spines['bottom'
.set_position(('data' 0))
ax1.spines['left'
.set_position(('data'0))
#设定图例
plt.legend(['Total Production'
)
fig = plt.figure(2figsize=(88))
ax2 = plt.subplot(111)