机器学习--matplotlib绘制各种图标

机器学习三剑客:numpy、pandas、matplotlib

NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵。

pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。

柱状图bar

from matplotlib import pyplot as plt
import matplotlib
 # 显示图表,仅限于jupyter使用
%matplotlib inline
#指定默认字体
matplotlib.rcParams[‘font.sans-serif‘] = [‘SimHei‘]
# 第一个参数:索引
# 第二个参数:高度    参数必须对应否则报错
plt.bar(range(5),[100,200,300,400,500],color=‘red‘)
plt.xticks(range(5),[‘A‘,‘B‘,‘C‘,‘D‘,‘E‘])
plt.xlabel(‘姓名‘)
plt.ylabel(‘得分‘)
plt.title(‘学生得分‘)# 或显示图标Plt.show()

饼图pie

labels = [‘A‘,‘B‘,‘C‘,‘D‘]
# autopct=‘%1.1f%%‘显示比列,格式化显示一位小数,固定写法
plt.pie([50,39,50,20],labels=labels,autopct=‘%1.1f%%‘)
plt.title(‘人口比例‘)

直方图hist

from matplotlib import pyplot as plt
import matplotlib

heights = [180,160,172,177,160]
plt.hist(heights,color=‘red‘,alpha=0.5)
# 横轴heights,纵轴当前值的个数
plt.xlabel(‘身高‘)
plt.ylabel(‘人数‘)
plt.title(‘身高统计‘)

散点图scatter

# 5、绘制一个散点图
# 用random模块获取两组数据,分别代表横纵坐标。一组数据里有50个数,
# 用随机种子的方法固定住random模块获取得到的数据
# 并将散点图里的符号变为‘*‘
import numpy as np
np.random.seed(10)  # 随机种子,将随机数固定住
heights = []
weights = []
heights.append(np.random.randint(150,185,size=50))
# weights.append(np.random.normal(loc=50,scale=100,size))  # 生成正太分布,也称高斯分布
weights.append(np.random.randint(50,100,size=50))
plt.scatter(heights,weights,marker=‘*‘,color=‘yellow‘)   #默认是圆点,marker=‘*‘

折线图plot

x = [4,65,71,5,3]
y = [3,12,5,2,3]
plt.plot(x,y)
# plt.savefig(‘a.jpg‘) # 保存图片

原文地址:https://www.cnblogs.com/lutt/p/10807052.html

时间: 2024-08-30 12:10:53

机器学习--matplotlib绘制各种图标的相关文章

matplotlib:使用matplotlib绘制图表

matplotlib下载及API手册地址:http://sourceforge.net/projects/matplotlib/files/matplotlib/ 数学库numpy下载及API手册地址:http://www.scipy.org/Download 几个绘图的例子[来自API手册] 1.最简单的图: 代码: #!/usr/bin/env python import matplotlib.pyplot as plt plt.plot([10, 20, 30]) plt.xlabel('

广义mandelbrot集,使用python的matplotlib绘制,支持放大缩小

迭代公式的指数,使用的1+5j,这是个复数,所以是广义mandelbrot集,大家可以自行修改指数,得到其他图形.各种库安装不全的,自行想办法,可以在这个网站找到几乎所有的python库 http://www.lfd.uci.edu/~gohlke/pythonlibs/#matplotlib #encoding=utf-8 import numpy as np import pylab as pl import time from matplotlib import cm from math

Python + Matplotlib 绘制 Penrose 铺砌

效果是不是很漂亮呢? 代码如下: #----------------------------------------- # Python + Matplotlib 绘制 Penrose 铺砌 # by Zhao Liang [email protected] #----------------------------------------- import matplotlib.pyplot as plt import numpy as np from matplotlib.path impor

用Matplotlib绘制二维图像

唠叨几句: 近期在做数据分析,需要对数据做可视化处理,也就是画图,一般是用Matlib来做,但Matlib安装文件太大,不太想直接用它,据说其代码运行效率也很低,在网上看到可以先用Java做数据处理,然后调用Matlib来画图,另外,还可以使用Matplotlib,它是用Python写的类似Matlib的库,能实现Matlib的功能,而且画图的质量很高,可用于做论文发表.找了一天的资料,终于出图了. Matplotlib需要配合numpy,scipy才能使用,具体安装步骤稍后补充. 正文: 用M

Python使用matplotlib绘制三维曲线

本文主要演示如何使用matplotlib绘制三维图形 代码如下: # -*- coding: UTF-8 -*- import matplotlib as mpl from mpl_toolkits.mplot3d import Axes3D import numpy as np import matplotlib.pyplot as plt # 设置图例字号 mpl.rcParams['legend.fontsize'] = 10 fig = plt.figure() # 设置三维图形模式 a

Python + Matplotlib 绘制 Aztec Diamond 图的随机铺砌

一个 $n$ 阶的 Aztec Diamond 图,是指依次将 $2,4,\ldots,2n,2n,\ldots,4,2$ 个单位方格摞在一起得到的对称图形(于是图中一共有 $2n(n+1)$ 个单位方格).下图是 $n=5$ 时候的例子: 对一个 $n$ 阶的 Aztec Diamond 图,用 $1\times 2$ 的多米诺骨牌铺砌它,总共有 $2^{n(n+1)}$ 种不同的方法.(这里不考虑对称性,比如全部用水平的骨牌铺砌和全部用竖直的骨牌铺砌,两种方法是不同的) 一个有趣的问题是,对

pyqt中使用matplotlib绘制动态曲线

一.项目背景: 看了matplotlib for python developers这本书,基本掌握了在pyqt中显示曲线的做法,于是自己写一个. 二.需求描述: 1)X轴显示时间点,显示长度为1分钟,每一秒钟绘制一个点,X轴长度超过1分钟,则左移1秒刻度,实现动态效果 2)Y轴显示随机变化的数值,1-100 三.准备工作 1环境:python3.3,eric5,pyqt4 四.开始动手: 使用Eric创建新项目: 在设计编码前期主要用到Eric的两个窗口:源码和窗体浏览器,类似delphi.

用matplotlib绘制每次交易的盈亏三角形

用matplotlib绘制每次交易的盈亏三角形 结果: 代码: python def plot_trade_triangle(self): # plot each trade as a trade-triangle, and annotate pnl trade = self.trade equity = self.equity.equity fig,ax=plt.subplots() for dt, row in trade.iterrows(): bars = row.buybar, row

python+matplotlib 绘制等高线

python+matplotlib 绘制等高线 步骤有七: 有一个m*n维的矩阵(data),其元素的值代表高度 构造两个向量:x(1*n)和y(1*m).这两个向量用来构造网格坐标矩阵(网格坐标矩阵m*n维,可见与data同) 构造网格坐标矩阵X,Y 进行颜色填充 画等高线 等高线的描述 删掉坐标系 1. 构造一下高度矩阵: def f(x,y): """ 计算高度的函数 :param x: 向量 :param y: 向量 :return: dim(x)*dim(y)维的矩