初学python,整理matplotlib库常用操作,包括绘制折线图,散点图
Demo1.
import numpy as np
import matplotlib.pyplot as plt
input_values = np.array([1,2,3,4,5])
output_values = np.array([1,4,9,16,25])
#绘制折线图
plt.plot(input_values, output_values, linewidth = 5)
#设置图表标题,给坐标轴加上标签
plt.title('square numbers',fontsize = 24)
plt.xlabel('values',fontsize = 14)
plt.ylabel('values square',fontsize = 14)
#设置刻度标记大小
plt.tick_params(axis='both',labelsize = 14)
#弹出窗口查看器
plt.show()
#绘制一系列散点图
x_values = list(range(1,1001))
y_values = [x**2 for x in x_values]
#自定义颜色c,删除轮廓edgecolor,设置散点大小s
#plt.scatter(x_values, y_values, c='red', edgecolor='none', s=200)
#用颜色映射colormap根据y值大小设置颜色
plt.scatter(x_values, y_values, c=y_values, cmap=plt.cm.Blues, edgecolor='none', s=200)
plt.title('scatter plot',fontsize = 24)
plt.xlabel('values',fontsize = 14)
plt.ylabel('scatter values',fontsize = 14)
##隐藏坐标轴
#plt.axes().get_xaxis().set_visible(False)
#plt.axes().get_yaxis().set_visible(False)
#设置坐标轴取值范围
plt.axis([0, 1000, 0, 1000000])
plt.show()
##自动保存图表plt.savefig,第一个实参指定保存文件名,第二个实参指定剪裁图表多余空白
#plt.savefig('scatter_plt.png',bbox_inches='tight')
Demo2.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-50,50,100)
y1 = x**2
y2 = 20*x
plt.figure()
l1, = plt.plot(x,y1,color='red',linewidth=3,linestyle='--')
l2, = plt.plot(x,y2,color='green',linewidth=3)
plt.legend(handles=[l1,l2,],labels=['double','linear'],loc='best') #设置标签及位置
#plt.xlim((-25,25)) #设置x坐标轴范围
#plt.ylim((0,400)) #设置y1坐标轴范围
plt.xlabel('I am x')
plt.ylabel('I am y1')
#ticks = np.linspace(-25,25,10) #重新设置x坐标轴坐标间隔
#plt.xticks(ticks)
#plt.yticks([0,25,75,150,250],['level1','level2','level3','level4','level5']) #字符串命名设置坐标轴y1
ax = plt.gca() #获得当前坐标轴属性
ax.spines['right'].set_color('none') #右边框消失
ax.spines['top'].set_color('none') #上边框消失
ax.xaxis.set_ticks_position('bottom') #设置下边框位置
ax.yaxis.set_ticks_position('left') #设置左边框位置
ax.spines['bottom'].set_position(('data',0)) #下边框设置为y1值为0的地方
ax.spines['left'].set_position(('data',0)) #左边框设置为x值为0的地方
plt.show()