ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python中的Matplotlib绘图

2020-11-01 21:01:41  阅读:220  来源: 互联网

标签:10 plt show Python axes Matplotlib color 绘图


  Matplotlib是Python的绘图工具,用Matplotlib可以绘制出我们想要的各类2D图。Matplotlib可用于python脚本、jupyter notebook、web等。个人认为在Jupyter Notebook中,Matplotlib表现非常棒哈哈!!

这篇随笔记录下关于最近学习Python数据分析绘图的知识点。(并非全面细致,仅供参考)

1.Matplotlib的基础构成

1.1figure

  就像我们生活当中画画一样,画图需要我们提供一个画板,添加各种元素,figure则是充当这么一个角色(对象)。

import matplotlib.pyplot as plt
fig = plt.figure()

1.2axes

  Matplotlib是一个2D绘图库,我们类似于数学将这个画板分成x和y这两个坐标轴。使用axes设置x和y轴。

1 fig = plt.figure()
2 ax = fig.add_subplot(221)
3 ax.set(xlim=[0,4], ylim=[0, 10], title='An Axes',ylabel='Y', xlabel='X')
4 plt.show()

运行结果如下图所示:

 

1.3xlim和ylim方法

  xlim和ylim方法从字面意思也可以理解,就是给这个图设置了坐标轴范围。

plt.plot(x**3,y)
plt.xlim(0,2)
plt.ylim(0,7)
plt.show()

运行结果如下图:

 

 1.4坐标轴标签

  坐标轴标签的方法有xlabel和ylabel,其中的color代表颜色,fontsize代表字体大小,rotation表示旋转角度。

1.5标题

  plt.title()方法,方法同坐标轴标签,附加:loc=‘left/right/center’,表示标题位于左右中的哪个位置。

结合坐标轴标签和标题,举一个例子:

import matplotlib.pyplot as plt
axes = plt.subplot(111)
axes.plot(x,y)
axes.set_ylabel('Y',fontsize=20,color='red',rotation=90)
axes.set_xlabel('X',fontdict={
    'fontsize':20,
    'color':'blue'
})
plt.title('X&Y',color='green',fontsize=20)
plt.show()

运行结果如下:

 

 基础的画图方法大概就是这些,其实中间还有一些小细节,可以自行去网上或者相关书籍查阅。

2.基本的2D图

2.1散点图

  顾名思义,散点图只有点没有线,这里可以借助random和numpy来绘图。

x = np.arange(10)
y = np.random.randn(10)
plt.scatter(x, y, color='blue', marker='*')
plt.show()

运行结果如下图:

 

 2.2柱状图

  柱状图有垂直的和水平的这两种。代码图形如下:

np.random.seed(1)
x = np.arange(10)
y = np.random.randn(10)
fig, axes = plt.subplots(ncols=2, figsize=plt.figaspect(1./2))
vert_bars = axes[0].bar(x, y, color='lightblue', align='center')
horiz_bars = axes[1].barh(x, y, color='lightblue', align='center')
axes[0].axhline(0, color='red', linewidth=2.5)
axes[1].axvline(0, color='blue', linewidth=2.5)
plt.show()

 

 2.3饼形图

 饼形图一般是根据各个label的百分比画饼。各个标签的百分比之和为100%。对于这部分我个人理解的还是少,也只是根据书上和网上大概知道一些成形的代码,如需细究,还请网上查找hh!

labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0)  # only "explode" the 2nd slice (i.e. 'Hogs')

fig1, (ax1, ax2) = plt.subplots(2)
ax1.pie(sizes, labels=labels, autopct='%1.1f%%', shadow=True)
ax1.axis('equal')
ax2.pie(sizes, autopct='%1.2f%%', shadow=True, startangle=90, explode=explode,
    pctdistance=1.12)
ax2.axis('equal')
ax2.legend(labels=labels, loc='upper right')

plt.show()

其实还有一些图表,例如泡泡图,箱型图,轮廓图,包括3D图等等,都可以用Matplotlib绘画出来,这就是鄙人的知识盲区了,若您想了解其他相关知识,烦请参考其他博客,小白的我,实在不会什么,告辞!

 

标签:10,plt,show,Python,axes,Matplotlib,color,绘图
来源: https://www.cnblogs.com/xiaolvzi/p/13911185.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有