matplotlib绘制二维图像
下面内容为通俗语言,希望对你有用
from matplotlib import pyplot as plt
from matplotlib import font_manager
import numpy as np
def curve_plot(x_array,y_array):
My_Font = font_manager.FontProperties(fname='C:WINDOWS/FONTS/SIMFANG.TTF')
plt.figure(figsize=(20,20),dpi=100)
x_ticks=['文字{}'.format(x) for x in x_array]
y_ticks=['文字{}'.format(x) for x in y_array]
plt.xticks(x_array[::10],x_ticks[::10],fontsize=10,fontproperties=My_Font,rotation=45,fontweight=2)
plt.yticks(y_array[::10],y_ticks[::10],fontsize=10,fontproperties=My_Font,fontweight=2)
plt.xlabel('标注(单位)',fontsize=30,fontproperties=My_Font)
plt.ylabel('标注(单位)',fontsize=30,fontproperties=My_Font)
plt.title('标题',bbox=dict(lw=0.5,fc='white',alpha=1),fontsize=50,fontproperties=My_Font,y=1.05)
plt.annotate(text="内容",xy=(np.pi,np.sin(np.pi/3)),xytext=(np.pi,np.pi))
plt.text(x=-5*np.pi,y=1,s="公式如下:",fontsize=40,fontproperties=My_Font,verticalalignment='center',horizontalalignment='center')
plt.scatter(np.pi,np.sin(np.pi),lw=10,color='r')
plt.plot(x_array,y_array,alpha=1,label='曲线一',color='orange')
plt.grid(alpha=0.3)
plt.legend(prop=My_Font,loc=1,fontsize=30)
plt.show()
if __name__=='__main__':
x_array=np.round(np.linspace(-5*np.pi,5*np.pi,100),3)
y_array=np.round(np.sin(x_array),3)
curve_plot(x_array, y_array)
