专栏首页日常撸知识python matplotlib study

python matplotlib study

Matplotlib是一个图形库,是以Numpy库为基础的一个库。我们主要看到的是Artist层。其结构如下图。

下面分别介绍各种图形的画法:

1.画线,

import matplotlib.pyplot as plt 
import numpy as npt=np.arange(0,6.28,0.1)
t1=np.arange(0,20,0.5)
y1=np.sin(t)
#y2=np.cos(t1)
plt.title('study the matplotlib',fontsize=20,fontname='Times New Roman')
plt.plot(t1,y2,'r--')

2.画数学函数,

import matplotlib.pyplot as plt
import numpy as np
t=np.arange(0,6.28,0.1)
t1=np.arange(0,20,0.5)
y1=np.sin(t)
y2=np.cos(t1)

plt.subplot(2,1,1)
plt.title('study the matplotlib',fontsize=20,fontname='Times New Roman')
plt.plot(t,y1,'b--')

plt.subplot(2,1,2)
plt.plot(t1,y2,'r--')
plt.plot(t)
plt.xlabel('the x axis value',color='red')
plt.ylabel('the y value',color='blue')
plt.text(0.8,0.8,'python_matplotlib')
plt.text(10,4,'$y=cos(x)$',fontsize=10,bbox={'facecolor':'yellow','alpha':0.9})
plt.grid(True)
plt.legend(['first series','second series'],loc=1)
plt.savefig(r'C:\\Users\\Administrator\\PycharmProjects\\chart\\study_matplotlib.png')

plt.show()

3.画直方图

pop=np.random.randint(0,100,100)
plt.hist(pop,bins=30)
plt.show()

4.画条状图,

index=['A','B','C','D','E']
values=[5,7,3,4,7]
std1=[0.8,0.4,-.6,0.9,1.4]
plt.title('The bar chart')
plt.barh(index,values,xerr=std1,error_kw={'ecolor':'0.1','capsize':6},alpha=0.7,label='First')
plt.yticks(index,['A+B','B+C','C+D','D+E','E+F'])
plt.legend(loc=4)
plt.grid()
plt.show()

5.多序列条状图(多序列水平条状图),

# multiseries bar chart
series1=np.array([3,4,5,6,7])
series2=np.array([4,5,6,7,8])
series3=np.array([5,6,7,8,9])

index=np.arange(1,6)
plt.axis([0,8,0,30])
plt.bar(index,series1,color='b',hatch='xx')
plt.bar(index,series2,color='g',hatch='///',bottom=series1)
plt.bar(index,series3,color='r',hatch='\\\\\\',bottom=(series1+series2))
plt.xticks(index+0.1,['Jan13','Feb15','Mar16','Apr19','June1'])
plt.show()

6.对比倒影条状图, y1=np.array([1,3,4,6,4,3,2,1]) y2=np.array([1,2,5,4,3,3,2,1]) plt.ylim([-7,7]) plt.bar(x0,y1,0.9,facecolor='r',edgecolor='w') plt.bar(x0,-y2,0.9,facecolor='b',edgecolor='w') plt.xticks(()) plt.grid(True) for x,y in zip(x0,y1): plt.text(x+0.2,y+0.1,'%d' %y,ha='center',va='bottom') for x,y in zip(x0,y2): plt.text(x+0.2,-y-0.5,'%d' %y,ha='center',va='bottom') plt.show()

7.画等高线图

dx=0.01; dy=0.01
x=np.arange(-2,2,dx)
y=np.arange(-2,2,dy)
X,Y=np.meshgrid(x,y)
def f(x,y):
    return (1-y**5+x**5)*np.exp(-x**2-y**2)
C=plt.contour(X,Y,f(X,Y),8,colors='black')
plt.contourf(X,Y,f(X,Y),8)
plt.clabel(C,inline=1,fontsize=10)
plt.colorbar()
plt.show()

8.画多面板图形,

gs=plt.GridSpec(3,3)
fig=plt.figure(figsize=(6,6))
x1=np.array([1,3,2,5])
y1=np.array([4,3,7,2])
x2=np.arange(5)
y2=np.array([3,2,4,6,4])
s1=fig.add_subplot(gs[1,:2])
s1.plot(x1,y1,'r')
s2=fig.add_subplot(gs[0,:2])
s2.bar(x2,y2)
s3=fig.add_subplot(gs[2,0])
s3.barh(x2,y2,color='g')
s4=fig.add_subplot(gs[:2,2])
s4.plot(x2,y2,'k')
s5=fig.add_subplot(gs[2,1:])
s5.plot(x1,y1,'b^',x2,y2,'yo')
plt.show()

本文分享自微信公众号 - 小末快跑(Faster_Future),作者:小末快跑

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • PID控制算法原理,并用python实现演示

    PID:比列(Proportion),积分(Integral),微分(Differential)

    小末快跑
  • 一些统计学基础知识,Statistics basics

    全距:最大值与最小值的差。仅描述数据的宽度,并没有描述数据上界和下届间数据的分布。

    小末快跑
  • 统计学之假设检验

    P-值规则:先把显著性水平α值转化为一定分布下的临界值,然后在计算检验统计值,最后把检验统计值与临界值相互比较来判断是否拒绝原假设。在双侧检验时,α平分在两侧,...

    小末快跑
  • 15 种最常用的 matplotlib 可视化图表(附 Python 源码)

    开始练习之前,首先你需要安装 matplotlib。实验楼为大家提供了已经安装好了各个模块的实验环境,推荐直接来实验楼练习。

    程序员小强
  • 我的机器学习matplotlib篇导入画出第一个图形颜色,标记,线型刻度、标题、标签和图例!创建子图

    前言: matplotlib是python最常用的绘图库,能帮你画出美丽的各种图 导入 包含了中文显示,屏外显示 import matplotlib.p...

    DC童生
  • python常用可视化技巧

    我们在对数据进行预处理时,常常需要对数据做一些可视化的工作,以便能更清晰的认识数据内部的规律。 这里我们以kaggle案例泰坦尼克问题的数据做一些常用的可视...

    机器学习AI算法工程
  • matplotlib相关图形绘制(一)

      折线图用于显示随时间或有序类别而变化的趋势。折线图其实是由多个点连接在一起得到了,当点足够多的时候,折线图就变成了平滑的曲线。

    朱小五
  • Matplotlib

    闪电gogogo
  • Python数据处理从零开始----第四章(可视化)(18)一文解决柱状图barplot or barchart

    柱状图(或条形图)是最常见的图类型之一。 它显示了数值变量和类别变量之间的关系。 (1)绘制基础柱状图

    用户1359560
  • Matplotlib可视化Pyplot Tutorial

    MATLAB, and pyplot, have the concept of the current figure and the current axes....

    用户2183996

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动