python——matploylib模块

(1)通用设置

plt.figure()      #定义一张图(下面一行属于此图)num = 3,figsize=(8,5) 设置图的序号为3) figsize = (8,5) (设置坐标轴的长和宽)
plt.plot(x,y1) #以线的形式(plot)展示x和y1(x为横坐标,y1为纵坐标)
#scatter:散点 bar:柱状图 hist:直方图 pie:饼图
#括号内参数 color = 'red' (设置线的颜色为红色)
#常用颜色
# 'b' 蓝色
# 'g' 绿色
# 'r' 红色
# 'c' 青色
# 'm' 品红
# 'y' 黄色
# 'k' 黑色
# 'w' 白色
# linewidth = 1.0 (设置线的宽度为1.0) linestyle = '--' (设置线的格式为 --)
#marker 设置点的形状 常用形状
# ‘.’:点(point marker)
# ‘,’:像素点(pixel marker)
# ‘o’:圆形(circle marker)
# ‘v’:朝下三角形(triangle_down marker)
# ‘^’:朝上三角形(triangle_up marker)
# ‘<‘:朝左三角形(triangle_left marker)
# ‘>’:朝右三角形(triangle_right marker)
# ‘1’:(tri_down marker)
# ‘2’:(tri_up marker)
# ‘3’:(tri_left marker)
# ‘4’:(tri_right marker)
# ‘s’:正方形(square marker)
# ‘p’:五边星(pentagon marker)
# ‘*’:星型(star marker)
# ‘h’:1号六角形(hexagon1 marker)
# ‘H’:2号六角形(hexagon2 marker)
# ‘+’:+号标记(plus marker)
# ‘x’:x号标记(x marker)
# ‘D’:菱形(diamond marker)
# ‘d’:小型菱形(thin_diamond marker)
# ‘|’:垂直线形(vline marker)
# ‘_’:水平线形(hline marker)
#s = 0.5 设置点的大小 scatter可用

plt.show() #打印图表

plt.xlim((-1,2)) #设置x轴的取值范围为 [-1,2]
plt.ylim((-2,3)) #设置y轴的取值范围为 [-2,3] (注意内部传入的是一个元组)

plt.xlabel('I am x') #设置坐标轴名称
plt.ylabel('I am y')

plt.yticks([-2,-1.8,-1,1.22,3],['really bad','bad','normal','good','really good']) #设置坐标刻度显示

plt.style.use('fast') #设置画布样式

plt.subplot(212) #一个画布 多个子图 212 行列位置 plt.subplot(212) plt.subplot(221) plt.subplot(222)两个小图 一个大图

ax = plt.gca()
ax.xaxis.set_major_locator(plt.MultipleLocator(2)) #设置坐标轴等距显示数值

(2)设置颜色条

cm1 = plt.cm.get_cmap('Greens')  #绿色
cm2 = plt.cm.get_cmap('Wistia') #黄色
cm3 = plt.cm.get_cmap('OrRd') #红色
sc1 = plt.scatter(x1,y1,c = z1,marker = 's',cmap=cm1,s = 10)
sc2 = plt.scatter(x2,y2,c = z2,marker = 's',cmap=cm2,s = 10)
sc3 = plt.scatter(x3,y3,c = z3,marker = 's',cmap=cm3,s = 10)
plt.colorbar(sc1) #某个线条、散点 的颜色条

(3)三维图形绘制

fig = plt.figure()
# ax = fig.add_subplot(321, projection='3d')  # 321代表将整张图平均分为3*2=6份(上下,左中右),该图占第一份(左上角)
ax = plt.axes(projection='3d')
# 三维线的数据
zline = np.linspace(0, 15, 1000)
xline = np.sin(zline)
yline = np.cos(zline)
ax.plot3D(xline, yline, zline, 'gray')
# 三维散点的数据
zdata = 15 * np.random.random(100)
print("zdata: ", zdata.shape)
xdata = np.sin(zdata) + 0.1 * np.random.randn(100)
ydata = np.cos(zdata) + 0.1 * np.random.randn(100)
ax.scatter3D(xdata, ydata, zdata, c=zdata, cmap='Greens')

plt.savefig('3d_img.png')
plt.show()

 

posted @ 2021-02-19 18:22  呱呱、、  阅读(113)  评论(0编辑  收藏  举报