引入

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 导入相关模块

使用

# 图表窗口1 → plt.show()
       plt.plot(np.random.rand(10))
       plt.show()
      # 直接生成图表

 特点:使用后无需写 show()   # 图表窗口2 → 魔法函数,嵌入图表

%matplotlib inline  
    x = np.random.randn(1000)
    y = np.random.randn(1000)
    plt.scatter(x,y)
    # 直接嵌入图表,不用plt.show()
   # <matplotlib.collections.PathCollection at ...> 代表该图表对象

    # 图表窗口3 → 魔法函数,弹出可交互的matplotlib窗口

%matplotlib notebook
   s = pd.Series(np.random.randn(100))
   s.plot(style = 'k--o',figsize=(10,5))
   # 可交互的matplotlib窗口,不用plt.show()
   # 可做一定调整

     # 图表窗口4 → 魔法函数,弹出matplotlib控制台

%matplotlib qt5
   df = pd.DataFrame(np.random.rand(50,2),columns=['A','B'])
   df.hist(figsize=(12,5),color='g',alpha=0.8)
   # 可交互性控制台
   # 如果已经设置了显示方式(比如notebook),需要重启然后再运行魔法函数
   # 网页嵌入的交互性窗口 和 控制台,只能显示一个

#plt.close()    
   # 关闭窗口

#plt.gcf().clear()  
   # 每次清空图表内内容

图标的基础元素 图名、图裂、轴标签、轴边界、轴刻度、轴刻度标签
 

plt.title('全国人大代表季度考核')   #标题
plt.xlabel('月份')   #x轴标签
plt.ylabel('积分')   #y轴标签

list.plot(figsize=(6,4))    图标的大小

plt.legend(loc='best')    #图裂的位置

best  自适应
upper right
upper left
lower left
lower right
right
center left
center right
lower center
upper center
center
plt.xlim(0,10)  #x轴坐标边界  数值多大
plt.ylim(0,2)
# 自定义 xy轴刻度 数组格式
plt.xticks(range(0,5))
plt.yticks([0,0.2,0.4,0.6,0.8,1.0])
完整演示

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
% matplotlib inline
# 导入相关模块

import warnings
warnings.filterwarnings('ignore')
# 不发出警告

ts.plot(kind='line',
       label = 'hehe',
       style = '--g.',
       color = 'red',
       alpha = 0.4,
       use_index = True,
       rot = 45,
       grid = True,
       ylim = [-50,50],
       yticks = list(range(-50,50,10)),
       figsize = (8,4),
       title = 'test',
       legend = True)

创建 子图

fig,axes = plt.subplots(4,1,figsize = (10,10))

s.plot(kind='bar',color = 'k',grid = True,alpha = 0.5,ax = axes[0])  # ax参数 → 选择第几个子图
# 单系列柱状图方法一:plt.plot(kind='bar/barh')

df.plot(kind='bar',ax = axes[1],grid = True,colormap='Reds_r')
# 多系列柱状图
df.plot(kind='bar',ax = axes[2],grid = True,colormap='Blues_r',stacked=True)
# 多系列堆叠图
# stacked → 堆叠
df.plot.barh(ax = axes[3],grid = True,stacked=True,colormap = 'BuGn_r')
# 新版本plt.plot.<kind>

plt.figure(figsize=(10,4))

#plt.grid(True, linestyle = "--",color = "gray", linewidth = "0.5",axis = 'x')  # 网格
plt.legend()
# Series.plot():series的index为横坐标,value为纵坐标
# kind → line,bar,barh...(折线图,柱状图,柱状图-横...)
# label → 图例标签,Dataframe格式以列名为label
# style → 风格字符串,这里包括了linestyle(-),marker(.),color(g)
# color → 颜色,有color指定时候,以color颜色为准
# alpha → 透明度,0-1
# use_index → 将索引用为刻度标签,默认为True
# rot → 旋转刻度标签,0-360
# grid → 显示网格,一般直接用plt.grid
# xlim,ylim → x,y轴界限
# xticks,yticks → x,y轴刻度值
# figsize → 图像大小
# title → 图名
# legend → 是否显示图例,一般直接用plt.legend()
# 也可以 → plt.plot()

几种类型:

记住几个点就行

在matplotlib中,整个图像为一个Figure对象

在Figure对象中可以包含一个或者多个Axes对象

每个Axes(ax)对象都是一个拥有自己坐标系统的绘图区域

plt.figure, plt.subplot

#创建一个容器 盒子

fig = plt.figure(figsize=(10,6),facecolor = 'gray')

#容器添加子图  第几行第几个

ax1 = fig.add_subplot(2,2,1)  # 第一行的左图

最新文章

  1. linux------------centos防火墙
  2. 三星s4宣传片配色有惊喜
  3. JAVA操作MongoDB数据库
  4. ViewController添加子控制器 并且弹出
  5. GXPT(一)——UI设计
  6. Lucene的DocFieldProcessor类
  7. 【JS】js获得下拉列表选中项的值和id
  8. 打包C#程序
  9. OpenGL光源位置
  10. Spring中的DataBinding(二) - Validation
  11. XMPPclient库Smack 4.0.6一个版本的开发
  12. 将数据的初始化放到docker中的整个工作过程(问题记录)
  13. Nginx Rewrite规则详解
  14. Jquery之Bind方法参数传递与接收的三种方法
  15. Jenkins高危代码执行漏洞检测/开源漏洞靶场
  16. $使用dom4j可解析 返回&amp;#x等字样的 html转义字符【转】
  17. springboot系列之-logging
  18. Linux解压.tar .tgz .tar.gz .tar.Z等文件
  19. WinForm MDIParent如何防止重复打开
  20. python中的struct模块

热门文章

  1. 各大ACM OJ网址
  2. arcgis几何对象
  3. js数组求交集
  4. Jeff Dean 光辉事迹
  5. ServletConfig详解 (转载)
  6. viewpager实现进入程序之前的欢迎界面效果
  7. 【JZOJ4896】【NOIP2016提高A组集训第16场11.15】兔子
  8. 如何在Liferay 7中创建一个简单的JSF Portlet
  9. 【Leetcode链表】反转链表 II(92)
  10. Java转iOS-第一个项目总结(2):遇到问题和解决方案