python库matplotlib绘制坐标图
很多时候我们数据处理的时候要画坐标图,下面我用第三方库matplotlib以及scipy绘制光滑的曲线图
需要安装的库有matplotlib,scipy,numpy
importmatplotlib.pyplotasplt
importnumpyasnp
frommpl_toolkits.axisartist.axislinesimportSubplot
fromscipyimportinterpolate
defsommth_plot(x_arr,y_arr):
fig=plt.figure()#创建一个figure
ax=Subplot(fig,111)#利用Subplot将figure加入ax
fig.add_axes(ax)
ax.axis['bottom'].set_axisline_style("->",size=1.5)#x轴加上箭头
ax.axis['left'].set_axisline_style("->",size=1.5)#y轴加上上箭头
ax.axis['top'].set_visible(False)#去除上方坐标轴
ax.axis['right'].set_visible(False)#去除右边坐标轴
xmin=min(x_arr)
xmax=max(x_arr)
xnew=np.arange(xmin,xmax,0.0005)#在最大最小值间以间隔为0.0005插入点
func=interpolate.interp1d(x_arr,y_arr)
ynew=func(xnew)#得到插入x对应的y值
plt.plot(xnew,ynew,'-')#绘制图像
plt.show()#show图像
if__name__=='__main__':
x=eval(input('输入x:'))
y=eval(input('输入y:'))
smooth_plot(x,y)
如果想进一步完善你的图像,可以用以下代码
#设置图像标题
plt.title('title')
#设置x范围,y同理
plt.xlim(1,4)
#给x,y轴添加说明
plt.xlabel('x')
plt.ylabel('y')
#设置线条的颜色,宽度,线条样式,标志以及曲线的标签
plt.plot(x,y,color='blue',linewidth=1.0,linestyle='--',marker='o',label='')
#如果传递了label参量,则使用下面函数使标签显示,loc选择位置,frameon=True标签会在一个框内
plt.legend(loc='upperleft',frameon=True)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
