python数据可视化的包怎么安装_数据可视化包 - matplotlib
Matplotlib
1,Matplotlib - 介绍
Matplotlib是一个强大的Python绘图和数据可视化的工具包。
# 安装方法
pip install matplotlib
# 引用方法
import matplotlib.pyplot as plt
# 绘图函数
plt.plot()
# 显示图像
plt.show()
这里可以使用jupyter,ipython notebook桌面解释器来运行matplotlib。
# 安装jupyter
!pip3 install jupyter
# 运行notebook
jupyter notebook
# 然后new一个python3文件,并且可以保存多种格式。
2,plot函数-绘制图像
plot函数:绘图函数。回值点图或线图,具体使用ipython: plt.plot?
# 这些属性可以不标示,直接写入引号里面即可。
#线型
linestyle(-,-.,--,...)
#点型
marker(v, ^, s, *, H, +, x, D, o,...) # o代表圆实点,
#颜色
color(b, g, r, y, k, w, ...)
如图:
3,Matplotlib - 图像标注
Matplotlib - 图像标注
设置图像标题
plt.title()
设置y轴范围
plt.ylim()
设置x轴名称
plt.xlabel()
设置x轴刻度
plt.xticks()
设置y轴名称
plt.ylabel()
设置y轴刻度
plt.yticks()
设置x轴范围
plt.xlim()
设置曲线图例
plt.legend()
代码示例一:调整名字和间隔
import matplotlib.pyplot as plt
import numpy as np
# 图像一:
# 使用np.linspace定义x:范围是(-3,3);个数是50. 仿真一维数据组(x ,y1)表示曲线1. 仿真一维数据组(x ,y2)表示曲线2.
x = np.linspace(-3, 3, 50)
y1 = 2*x + 1
y2 = x**2
# 使用plt.figure定义一个图像窗口. 使用plt.plot画(x ,y2)曲线.
# 使用plt.plot画(x ,y1)曲线,曲线的颜色属性(color)为红色;曲线的宽度(linewidth)为1.0;曲线的类型(linestyle)为虚线.
# 使用plt.title定义标题,使用label定义线条名称,使用plt.legend()显示定义线条
plt.figure()
plt.plot(x, y2, label = 'Line A')
plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--', label = 'Line B')
# legend将要显示的信息来自于上面代码中的 label. 所以我们只需要简单写下一下代码, plt 就能自动的为我们添加图例.
plt.legend(loc='lower right')
# 使用plt.xlim设置x坐标轴范围:(-1, 2); 使用plt.ylim设置y坐标轴范围:(-2, 3);
# 使用plt.xlabel设置x坐标轴名称:’I am x’;使用plt.ylabel设置y坐标轴名称:’I am y’;
plt.xlim((-1, 2))
plt.ylim((-2, 3))
plt.xlabel('I am x')
plt.ylabel('I am y')
plt.show()
# 图像二:
# 使用np.linspace定义范围以及个数:范围是(-1,2);个数是5. 使用print打印出新定义的范围.
# 使用plt.xticks设置x轴刻度:范围是(-1,2);个数是5.
new_ticks = np.linspace(-1, 2, 5)
plt.xticks(new_ticks)
plt.title('Temper')
# 使用plt.yticks设置y轴刻度以及名称:刻度为[-2, -1.8, -1, 1.22, 3];
# 对应刻度的名称为[‘really bad’,’bad’,’normal’,’good’, ‘really good’]. 使用plt.show显示图像.
plt.yticks([-2, -1.8, -1, 1.22, 3],[r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$really\ good$'])
# plt.yticks(np.arange(0,10,2),['a','b','c','d','e','f'])
plt.show()
详解legend函数
plt.legend(loc='lower right')表示右下方
如果我们想单独修改之前的 label 信息, 给不同类型的线条设置图例信息. 我们可以在 plt.legend 输入更多参数. 如果以下面这种形式添加 legend, 我们需要确保, 在上面的代码 plt.plot(x, y2, label='linear line') 和 plt.plot(x, y1, label='square line') 中有用变量 l1 和 l2 分别存储起来. 而且需要注意的是 l1, l2,要以逗号结尾, 因为plt.plot() 返回的是一个列表.
plt.legend(handles=[l1, l2], labels=['up', 'down'], loc='best')
这样我们就能分别重新设置线条对应的 label 了.
其中’loc’参数有多种,’best’表示自动分配最佳位置,其余的如下:
'best' : 0,
'upper right' : 1,
'upper left' : 2,
'lower left' : 3,
'lower right' : 4,
'right' : 5,
'center left' : 6,
'center right' : 7,
'lower center' : 8,
'upper center' : 9,
'center' : 10,
总结果如图所示:
代码示例二:调整坐标轴
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 50)
y1 = 2*x + 1
y2 = x**2
plt.figure()
plt.plot(x, y2)
plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
plt.xlim((-1, 2))
plt.ylim((-2, 3))
new_ticks = np.linspace(-1, 2, 5)
plt.xticks(new_ticks)
plt.yticks([-2, -1.8, -1, 1.22, 3],['$really\ bad$', '$bad$', '$normal$', '$good$', '$really\ good$'])
# 使用plt.gca获取当前坐标轴信息. 使用.spines设置边框:右侧边框;使用.set_color设置边框颜色:默认白色;
# 使用.spines设置边框:上边框;使用.set_color设置边框颜色:默认白色;
ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
# 使用.xaxis.set_ticks_position设置x坐标刻度数字或名称的位置:bottom.(所有位置:top,bottom,both,default,none)
ax.xaxis.set_ticks_position('bottom')
# 使用.spines设置边框:x轴;使用.set_position设置边框位置:y=0的位置;(位置所有属性:outward,axes,data)
ax.spines['bottom'].set_position(('data', 0))
# 使用.yaxis.set_ticks_position设置y坐标刻度数字或名称的位置:left.(所有位置:left,right,both,default,none)
ax.yaxis.set_ticks_position('left')
# 使用.spines设置边框:y轴;使用.set_position设置边框位置:x=0的位置;(位置所有属性:outward,axes,data)
ax.spines['left'].set_position(('data',0))
plt.show()
结果示意图:
4,Annotation标注
标注图像中某些特殊的地方
当图线中某些特殊地方需要标注时,我们可以使用 annotation. matplotlib 中的 annotation 有两种方法, 一种是用 plt 里面的 annotate,一种是直接用 plt 里面的 text 来写标注.
①画出基本图,绘制一条直线:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 50)
y = 2*x + 1
plt.figure(num=1, figsize=(8, 5),)
plt.plot(x, y,)
结果如图:
②移动坐标
然后我们挪动坐标轴的位置.
ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))
结果如图:
然后标注出点(x0, y0)的位置信息. 用plt.plot([x0, x0,], [0, y0,], 'k--', linewidth=2.5) 画出一条垂直于x轴的虚线.
x0 = 1
y0 = 2*x0 + 1
plt.plot([x0, x0,], [0, y0,], 'k--', linewidth=2.5)
# set dot styles
plt.scatter([x0, ], [y0, ], s=50, color='b')
结果如图:
③添加注释annotate
接下来我们就对(x0, y0)这个点进行标注.
plt.annotate(r'$2x+1=%s$' % y0, xy=(x0, y0), xycoords='data', xytext=(+30, -30),
textcoords='offset points', fontsize=16,
arrowprops=dict(arrowstyle='->', connectionstyle="arc3,rad=.2"))
其中参数xycoords='data' 是说基于数据的值来选位置, xytext=(+30, -30) 和 textcoords='offset points' 对于标注位置的描述 和 xy 偏差值, arrowprops是对图中箭头类型的一些设置.
结果如图:
④添加注释text
plt.text(-3.7, 3, r'$This\ is\ the\ some\ text. \mu\ \sigma_i\ \alpha_t$',
fontdict={'size': 16, 'color': 'r'})
其中-3.7, 3,是选取text的位置, 空格需要用到转字符\,fontdict设置文本字体.
结果如图:
5,Matplotlib - 画布与图
Matplotlib - 画布与图
画布
figure
fig = plt.figure()
图
subplot
ax1 = fig.add_subplot(2, 2, 1)
调节子图间距
subplots_adjust(left, bottom, right, top, wspace, hspace)
建立等差数列值
np.linspace(start,end) # 在指定的间隔内返回均匀间隔的数字
wspace表示宽度,hspace表示高度
㈠subplot多合一显示
①均匀图中图
import matplotlib.pyplot as plt
plt.figure()
# 使用plt.subplot来创建小图. plt.subplot(2,2,1)表示将整个图像窗口分为2行2列, 当前位置为1.
# 使用plt.plot([0,1],[0,1])在第1个位置创建一个小图.
plt.subplot(2,2,1)
plt.plot([0,1],[0,1])
# plt.subplot(2,2,2)表示将整个图像窗口分为2行2列, 当前位置为2. 使用plt.plot([0,1],[0,2])在第2个位置创建一个小图.
plt.subplot(2,2,2)
plt.plot([0,1],[0,2])
# plt.subplot(2,2,3)表示将整个图像窗口分为2行2列,当前位置为3. plt.subplot(2,2,3)可以简写
# 成plt.subplot(223), matplotlib同样可以识别. 使用plt.plot([0,1],[0,3])在第3个位置创建一个小图.
plt.subplot(223)
plt.plot([0,1],[0,3])
# plt.subplot(224)表示将整个图像窗口分为2行2列, 当前位置为4. 使用plt.plot([0,1],[0,4])在第4个位置创建一个小图.
plt.subplot(224)
plt.plot([0,1],[0,4])
plt.show() # 展示
结果如图所示:
②不均匀图中图
import matplotlib.pyplot as plt
plt.figure()
# 使用plt.subplot(2,1,1)将整个图像窗口分为2行1列, 当前位置为1. 使用plt.plot([0,1],[0,1])在第1个位置创建一个小图.
plt.subplot(2,1,1)
plt.plot([0,1],[0,1])
# 使用plt.subplot(2,3,4)将整个图像窗口分为2行3列, 当前位置为4. 使用plt.plot([0,1],[0,2])在第4个位置创建一个小图.
plt.subplot(2,3,4)
plt.plot([0,1],[0,2])
plt.subplot(235)
plt.plot([0,1],[0,3])
plt.subplot(236)
plt.plot([0,1],[0,4])
plt.show() # 展示
结果如图所示:
条形图:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = [32, 48, 21, 100]
labels = ['Jan', 'Feb', 'Mar', 'Apr']
plt.bar(np.arange(len(data)),data, align = 'edge')
plt.xticks(np.arange(len(data)),labels)
plt.show()
图形示意:
饼图:
plt.pie([10,20,30,40],labels = ['a', 'b', 'c', 'd'], autopct = "%.2f%%",explode = [0.1, 0, 0.1, 0])
plt.axis('equal')
plt.show()
图形结果:
㈥绘制K线图
matplotlib.finanace子包中有许多绘制金融相关图的函数接口。最新的是mpl_finance包
绘制K线图函数:
matplotlib.finance.candlestick_ochl
无需matplotlib.finance,直接使用mpl_finance中的candlestick_ochl
import matplotlib.pyplot as plt
import matplotlib
import pandas as pd
from mpl_finance import candlestick_ochl
over
python数据可视化的包怎么安装_数据可视化包 - matplotlib相关推荐
- R包库安装及数据加载:一次安装多个R包、一次加载多个R包
R包库安装及数据加载:一次安装多个R包.一次加载多个R包 目录 R包库安装及数据加载 R包安装 一次安装多个R包 加载需要的R包
- python数据可视化第三方库有哪些_数据可视化!看看程序员大佬都推荐的几大Python库...
数据可视化是数据分析中极为重要的部分,而数据可视化图表(如条形图,散点图,折线图,地理图等)也是非常关键的一环.Python作为数据分析中最流行的编程语言之一,有几个库可以创建精美而复杂的数据可视化, ...
- 包无法安装_详细教程 | 安装Python编程环境以及使用OpenpyXl操作Excel
详细教程 | 安装Python编程环境以及使用OpenpyXl操作Excel 注意:下列教程为 Windows7 64位:Windows 10有部分步骤有差异,请参考使用! 01 下载Python程序 ...
- python的dev包怎么安装_几种Python包的安装方式
我们知道Python之所以很流行,有一个很重要的原因是因为它有很多包可以供我们使用,但是这些包很多都不是自带的,需要手动去安装,本篇我们就讲一下安装Python包的几种方式. 1.前言 我们平常用到的 ...
- python操作mysql数据库依赖包_python安装mysql的依赖包mysql-python操作
一般情况下,使用pip命令安装即可: [root@dthost27 ~]# pip install mysql-python 但是在实际工作环境中,往往会安装失败,这是因为系统缺少mysql的相关依赖 ...
- 用于LaTeX Python代码展现的minted包的安装及运行该包时TeXworks编译命令的设置
目录 1 介绍 2 安装包minted的方法 3 在Windows下配置TeXworks的针对minted包的编译指令 4 minted包的运行示例 1 介绍 早有利于LaTeX\LaTeXLATE ...
- python描述性统计工作日上班时代码_数据的描述性统计以及用Python代码实现
一.数据的描述性统计 对数据的描述性统计主要是指对结构化数据的描述分析,可从三个维度进行分析:数据的集中趋势.数据的离散程度和数据的分布形态. 描述数据集中趋势的指标有:众数.中位数.平均数(包含算数 ...
- 【Python】使用TUNA提升pip安装第3方包的速度
问题 Python为解决各种问题提供了非常丰富的第3方库,而使用这些库之前,需要使用pip进行安装.然而,采用默认的方式安装,速度极其缓慢. 方法 使用TUNA提升pip安装第3方包的速度. pyth ...
- echart 数据点可以加链接吗_地理可视化就这么简单、酷炫,蚂蚁金服AntV 空间数据可视化引擎 L72.0发布...
导读 L7 是由蚂蚁金服 AntV 数据可视化团队推出的基于 WebGL 的开源大规模地理空间数据可视分析开发框架.L7 中的 L 代表 Location,7 代表世界七大洲,寓意能为全球位置数据提供 ...
最新文章
- hibernate mysql 存储过程_hibernate调用mysql存储过程
- L2级自动驾驶量产趋势解读
- 【逆天的算法】这几首宋词,你能看出来是出自计算机之手吗?
- 运动基元_开发人员的新分布式基元
- 关于Maven本地仓库中存在依赖时,重新下载was cached in the local repository错误
- Oracle的卸载过程步骤
- 8音度dsp调音教程_特伦诗DSP电脑调音教程 8音度DSP调音软件使用认知连载一
- 使用VC2005编译静态应用程序的方法
- 恒德室内智能照明控制系统电路设计
- 面向对象:兜兜转转了很久,希望你恰好也在
- 《西瓜书》学习笔记-目录
- C#海康摄像机SDK二次开发
- 开启加盟模式,喜茶能否借此越过山丘?
- p1904 p1903
- 回忆过去,畅想未来--2016下
- 6.oop-类和对象
- 既生synchronized,何生volatile
- 整车行业MES系统概念导入
- js单行代码------对象
- 路由追踪命令Tracert
热门文章
- mysqlbinlog日志查看
- Oracle expdp和impdp
- servlet ---- 案例(简单)优化
- mysql主从复制原理的理解,MySQL主从复制以及原理好理解)
- 平衡二叉树的旋转_平衡二叉树的旋转
- Linux下安装Apache Maven安装
- swoole 类中使用定时器
- 解决问题 xcrun: error: invalid active developer path
- response.getWriter().write()与out.print()的区别
- TensorBoard:图形可视化