matplotlib基础汇总_01
- 灰度化处理就是将一幅色彩图像转化为灰度图像的过程。彩色图像分为R,G,B三个分量,
分别显示出红绿蓝等各种颜色,灰度化就是使彩色的R,G,B分量相等的过程。
灰度值大的像素点比较亮(像素值最大为255,为白色),反之比较暗(像素最下为0,为黑色)。- 图像灰度化的算法主要有以下3种:
- data2 = data.mean(axis = )
- data3 = np.dot(data,[0.299,0.587,0.114])
- Matplotlib中的基本图表包括的元素
- x轴和y轴
- 水平和垂直的轴线
- x轴和y轴刻度
- 刻度标示坐标轴的分隔,包括最小刻度和最大刻度
- x轴和y轴刻度标签
- 表示特定坐标轴的值
- 绘图区域
- 实际绘图的区域
- 绘制一条曲线
- x = np.arange(0.0,6.0,0.01)
- plt.plot(x, x**2)
- plt.show()
- 绘制多条曲线
- x = np.arange(1, 5,0.01)
- plt.plot(x, x**2)
- plt.plot(x, x**3.0)
- plt.plot(x, x*3.0)
- plt.show()
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, x, x*3.0, x, x/3.0)
- plt.show()
- 绘制网格线
- 设置grid参数(参数与plot函数相同)
- lw代表linewidth,线的粗细
- alpha表示线的明暗程度
- # 使用子图显示不同网格线对比
- fig = plt.figure(figsize=(20,3))
- x = np.linspace(0, 5, 100)
- # 使用默认网格设置
- ax1 = fig.add_subplot(131)
- ax1.plot(x, x**2, x, x**3,lw=2)
- ax1.grid(True) # 显式网格线
- # 对网格线进行设置
- ax2 = fig.add_subplot(132)
- ax2.plot(x, x**2, x, x**4, lw=2)
- ax2.grid(color='r', alpha=0.5, linestyle='dashed', linewidth=0.5) # grid函数中用与plot函数同样的参数设置网格线
- # 对网格线进行设置
- ax3 = fig.add_subplot(133)
- ax3.plot(x, x**2, x, x**4, lw=2)
- ax3.grid(color='r', alpha=0.5, linestyle='-.', linewidth=0.5) # grid函数中用与plot函数同样的参数设置网格线
- 坐标轴界限 axis 方法
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, x, x*3.0, x, x/3.0)
- # plt.axis() # shows the current axis limits values;如果axis方法没有任何参数,则返回当前坐标轴的上下限
- # (1.0, 4.0, 0.0, 12.0)
- # plt.axis([0, 15, -5, 13]) # set new axes limits;axis方法中有参数,设置坐标轴的上下限;参数顺序为[xmin, xmax, ymin, ymax]
- plt.axis(xmax=5,ymax=23) # 可使用xmax,ymax参数
- plt.show()
- 设置紧凑型坐标轴
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, x, x*3.0, x, x/3.0)
- plt.axis('tight') # 紧凑型坐标轴
- plt.show()
- plt除了axis方法设置坐标轴范围,还可以通过xlim,ylim设置坐标轴范围
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, x, x*3.0, x, x/3.0)
- plt.xlim([0, 5]) # ylim([ymin, ymax])
- plt.ylim([-1, 13]) # xlim([xmin, xmax])
- plt.show()
- 坐标轴标签
- plt.plot([1, 3, 2, 4])
- plt.xlabel('This is the X axis')
- plt.ylabel('This is the Y axis')
- plt.show()
- 坐标轴标题
- plt.plot([1, 3, 2, 4])
- plt.title('Simple plot')
- plt.show()
- label参数为'_nolegend_',则图例中不显示
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, label = '_nolegend_') # label参数为'_nolegend_',则图例中不显示
- plt.plot(x, x*3.0, label='Fast')
- plt.plot(x, x/3.0, label='Slow')
- plt.legend()
- plt.show()
- 图例 legend
- legend方法
- 两种传参方法:
- 【推荐使用】在plot函数中增加label参数
- 在legend方法中传入字符串列表
- 方法一:
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, label='Normal') # 在plot函数中增加label参数
- plt.plot(x, x*3.0, label='Fast')
- plt.plot(x, x/3.0, label='Slow')
- plt.legend()
- plt.show()
- 方法二:
- x = np.arange(1, 5)
- plt.plot(x, x*1.5)
- plt.plot(x, x*3.0)
- plt.plot(x, x/3.0)
- plt.legend(['Normal', 'Fast', 'Slow']) # 在legend方法中传入字符串列表
- plt.show()
- loc 参数
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, label='Normal')
- plt.plot(x, x*3.0, label='Fast')
- plt.plot(x, x/3.0, label='Slow')
- plt.legend(loc=10)
- plt.show()
- loc参数可以是2元素的元组,表示图例左下角的坐标
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, label='Normal')
- plt.plot(x, x*3.0, label='Fast')
- plt.plot(x, x/3.0, label='Slow')
- plt.legend(loc=(0,1)) # loc参数可以是2元素的元组,表示图例左下角的坐标
- plt.show()
- ncol参数控制图例中有几列
- x = np.arange(1, 5)
- plt.plot(x, x*1.5, label='Normal')
- plt.plot(x, x*3.0, label='Fast')
- plt.plot(x, x/3.0, label='Slow')
- plt.legend(loc=0, ncol=2) # ncol控制图例中有几列
- plt.show()
- linestyle 属性
- plt.plot(np.random.randn(1000).cumsum(), linestyle = ':',marker = '.', label='one')
- plt.plot(np.random.randn(1000).cumsum(), 'r--', label='two')
- plt.plot(np.random.randn(1000).cumsum(), 'b.', label='three')
- plt.legend(loc='best') # loc='best'
- plt.show()
- 保存图片
- filename
- 含有文件路径的字符串或Python的文件型对象。图像格式由文件扩展名推断得出,例如,.pdf推断出PDF,.png推断出PNG (“png”、“pdf”、“svg”、“ps”、“eps”……)
- dpi
- 图像分辨率(每英寸点数),默认为100
- facecolor
- 图像的背景色,默认为“w”(白色)
- x = np.random.randn(1000).cumsum()
- fig = plt.figure(figsize = (10,3))
- splt = fig.add_subplot(111)
- splt.plot(x)
- fig.savefig(filename = "filena.eps",dpi = 100,facecolor = 'g')
2020-05-24
matplotlib基础汇总_01的更多相关文章
- matplotlib基础汇总_04
3D图形 导包 import numpy as np import matplotlib.pyplot as plt #3d图形必须的 from mpl_toolkits.mplot3d.axes3d ...
- matplotlib基础汇总_03
四图 直方图 [直方图的参数只有一个x!!!不像条形图需要传入x,y] hist()的参数 bins 可以是一个bin数量的整数值,也可以是表示bin的一个序列.默认值为10 normed 如果值为T ...
- matplotlib基础汇总_02
设置plot的风格和样式 点和线的样式 颜色 参数color或c 五种定义颜色值的方式 别名 color='r' 合法的HTML颜色名 color = 'red' HTML十六进制字符串 color ...
- shell脚本语法基础汇总
shell脚本语法基础汇总 将命令的输出读入一个变量中,可以将它放入双引号中,即可保留空格和换行符(\n) out=$(cat text.txt) 输出1 2 3 out="$(cat te ...
- 数据分析与展示——Matplotlib基础绘图函数示例
Matplotlib库入门 Matplotlib基础绘图函数示例 pyplot基础图表函数概述 函数 说明 plt.plot(x,y,fmt, ...) 绘制一个坐标图 plt.boxplot(dat ...
- linux编程基础汇总贴
linux编程基础汇总贴http://newzol.cn/forum.php?mod=viewthread&tid=67&fromuid=3(出处: newzol) 1.管道 http ...
- C++基础学习_01
C++基础学习_01 基础知识:1.命名空间,2.IO流(输入输入),3.参数缺省,4.函数重载 1.命名空间 作用:对标识符的名称进行本地化,避免命名冲突 定义:namaspace space_na ...
- Matplotlib基础图形之散点图
Matplotlib基础图形之散点图 散点图特点: 1.散点图显示两组数据的值,每个点的坐标位置由变量的值决定 2.由一组不连续的点组成,用于观察两种变量的相关性(正相关,负相关,不相关) 3.例如: ...
- Selenium基于Python web自动化基础一 -- 基础汇总及简单操作
Selenium是UI层WEB端的自动化测试框架,也是目前市面上比较流行的自动化测试框架. ui层自动化测试本质是什么?模拟用户的真实操作行为. 基础汇总: 导入所需要的模块 from seleniu ...
随机推荐
- 洛谷 P1828 【香甜的黄油 Sweet Butter】
这道题应该就是模板题了吧qwq. 统计每一个牧场的放糖的情况,选择最优的即可 有亿点水的绿题. #include <bits/stdc++.h> using namespace std; ...
- c语言学习笔记第四章——字符串和格式化输入、输出
B站有视频演示 本章学习printf函数的输入输出,字符串的定义与实用. 字符串 字符串(character string)是一个或多个字符的序列,如下所示: "Zing went the ...
- h5页面自动播放视频、音频_关于媒体文件自动全屏播放的实现方式
在移动端(ios和android)播放视频的时候,我们即使定义了autoplay属性,仍然不能自动播放.这是由于手机浏览器为了防止浪费用户的网络流量,在默认情况下是不允许媒体文件自动播放的,除非用户自 ...
- java 基本语法(十九)Optional类的使用
java.util.Optional类1.理解:为了解决java中的空指针问题而生!Optional<T> 类(java.util.Optional) 是一个容器类,它可以保存类型T的值, ...
- 数据可视化之powerBI基础(十五)Power BI同步切片器,你知道怎么用吗?
https://zhuanlan.zhihu.com/p/67932754 在PowerBI报表中,切片器绝对是最常用的控件了,利用它可以进行各种维度的动态切换,同一个页面中的所有图表可以同步响应:利 ...
- 【JVM】或许,这就是二进制Class吧
水稻:看你研究盯着这个文档一天了,什么玩意让人心驰神往 菜瓜:前几天意外得到一本武功秘籍<jvms8>,看起来就情不自禁 水稻:这不是Java虚拟机的说明文档吗<PS:投来惊吓的目光 ...
- 性能测试必备知识(2)- 查看 Linux 的 CPU 相关信息
做性能测试的必备知识系列,可以看下面链接的文章哦 https://www.cnblogs.com/poloyy/category/1806772.html 查看系统 CPU 信息 cat /proc/ ...
- 不藏了,摊牌了,一张知识图谱整理完整Java并发体系,就问全不全
推荐阅读: 2020年马士兵Java多线程高并发讲解——百万年薪架构师告诉你Java多线程与高并发 目录 这是我关于整个Java并发体系的整理,结合的主要是现在市面上对于Java并发在面试的过程中经常 ...
- Java历史[史上最详细的阐述了Java发展的历史过程]
Java历史 学习Java语言之前,我觉得大家应该是从头开始,对吧?不管你之前是学过还是没学过,都和学习某一个知识一样,从头开始去了解它,然后到这个深入的掌握,到最后你可能理解并且灵活的运用.所以它肯 ...
- Git 推送到远程仓库
github:https://github.com/ 国内的:https://gitee.com/ (和Github非常相似的) 一.Http方式进行推送 右击同步,配置远端,将URL替换成远程仓库的 ...