ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Matplotlib(7)——图片读取,背景绘制等

2020-12-22 23:58:02  阅读:436  来源: 互联网

标签:None plt 读取 seaborn Matplotlib fig np 绘制 图片


获取当前图像gca()

感觉主要作用可以使plt方法转化为面相对象方法

  • 方法:
    plt.gca(**kwargs)
  • 实例:
x = np.arange(0,2*np.pi,0.1)
y = x**2

fig = plt.figure()
plt.subplot(211)
plt.plot(x,y)
ax1 = plt.gca()

fig = plt.figure()
plt.subplot(212)
plt.bar(x,y)
ax2 = plt.gca()

ax1.set_title('折线图')
ax2.set_title('柱状图')

读取图片 imread()

  • 方法:
    imread(fname, format=None)

  • 参数:

    • fname:读取图片的路径
    • format:读取图片的格式
  • 实例:
    imread() 方法返回的是一个np.array

fig = plt.figure()
im3 = plt.imread(r'C:\Users\Administrator\Desktop\1.jpg')
print(im3)

在这里插入图片描述

绘制图片 imshow()

  • 方法:
    imshow(X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, shape=, filternorm=1, filterrad=4.0, imlim=, resample=None, url=None, *, data=None, **kwargs)
  • 参数:
    • X:用于绘制的图像数组
    • norm:如果使用scalar data,则Normalize会对其进行缩放[0,1]的数据值内。默认情况下,数据范围使用线性缩放映射到颜色条范围。 RGB(A)数据忽略该参数。
    • aspect:每个像素的长宽比,可选{‘equal’,’auto’,‘float’},默认’equal’。
    • alpha:透明度。RGB(A)数据忽略该参数。
    • origin:将数组的[0,0]索引放置在轴的左上角或左下角。可选{‘upper’, ‘lower’}。设置为‘lower’时,相当于翻转了图片。
    • cmap:颜色图谱(colormap), 默认为RGB(A)颜色空间。cmap所有可选值都封装在plt.cm里,输入plt.cm. 然后按tab键就可以查看。常用图谱如下:
      查看cmap可选值
plt.cm.

在这里插入图片描述
常用图谱如下:

颜色图谱色彩描述
gray黑白
hot黑红黄白
pink黑棕白
magma黑红白
inferno黑红黄
copper黑,肉色
autumn红橙黄
hsv红黄绿蓝->红
flag红白蓝黑
prism红黄绿
spring品红,黄
jet蓝青黄红
winter蓝绿
  • 实例:

读取图片,并绘制反向图片

fig = plt.figure()
im3 = plt.imread(r'C:\Users\Administrator\Desktop\1.jpg')
plt.imshow(im3,origin = 'lower')
plt.axis('off')

在这里插入图片描述
热力图

import matplotlib.pyplot as plt
X = [[1,2,3],[4,5,6],[7,8,9]]
plt.imshow(X,cmap='hot')
plt.colorbar()  # 显示右边的颜色条

# 设置坐标轴标签
labels = ['a','b','c']
ticks = list(np.arange(len(labels)))

plt.xticks(ticks,labels)
plt.yticks(ticks,labels)

# 设置标签
for i in ticks:
    for j in ticks:
        plt.text(i,j,X[i][j])
plt.show()

在这里插入图片描述

将数组保存为图片 imsave()

  • 方法:
    imsave(fname, arr, **kwargs)
  • 参数:
    • fname:保存路径。
    • arr:表示图片的数组。
    • cmap:颜色图谱(colormap), 默认为RGB(A)颜色空间。
    • vmin, vmax:通过将映射到彩色地图颜色限制的值固定来设置图像的颜色缩放
    • origin:将数组的[0,0]索引放置在轴的左上角或左下角。可选{‘upper’, ‘lower’}。设置为‘lower’时,相当于翻转了图片。
    • dpi:分辨率。
  • 实例:
fig = plt.figure()
im3 = plt.imread(r'C:\Users\Administrator\Desktop\1.jpg')
plt.imsave(r'C:\Users\Administrator\Desktop\5.jpg',im3)

保存图片 savefig()

  • 方法:
    savefig(fname, dpi=None, facecolor=‘w’, edgecolor=‘w’, orientation=‘portrait’, papertype=None, format=None, transparent=False, bbox_inches=None, pad_inches=0.1, frameon=None, metadata=None)

  • 参数:

    • frame:保存路径。
    • dpi:分辨率
    • format:文件格式,常用有:png, jpg, eps, svg, pgf, pdf
  • 注意:
    savefig 应写在 show 函数前面,否则保存的将是show所创建的新空白图片。

  • 实例:

x = np.arange(6)
y = np.arange(6)

plt.barh(x,y*2)
plt.ylim(0)

plt.savefig(r'C:\Users\Administrator\Desktop\1.png')
plt.show()

在这里插入图片描述

关闭图像窗口

  • 方法:
    close(fig=None)
  • 参数:
    • fig:要关闭的图像窗口。
      • None:当前窗口
      • .Figure:给定的图像实例
      • int:图像数字
      • str: 图像名称
      • ‘all’:所有图像
  • 实例:
import matplotlib.pyplot as plt
X = [[1,2,3],[4,5,6],[7,8,9]]
plt.imshow(X,cmap='hot')
plt.close()

绘图样式设置 plt.style.available

通过plt.style.use(样式名)方式,可以对图片的背景模板进行替换。具体模板可通过plt.style.available来进行查看:

  • 实例:
import numpy as np
import matplotlib.pyplot as plt

plt.style.use('dark_background')

x=np.linspace(1,10,num=100)
y=np.sin(x)

plt.figure() 
plt.plot(x,y) 

在这里插入图片描述

  • 背景样式:
    • ‘bmh’
    • ‘classic’
    • ‘dark_background’
    • ‘fast’
    • ‘fivethirtyeight’
    • ‘ggplot’
    • ‘grayscale’
    • ‘seaborn-bright’
    • ‘seaborn-colorblind’
    • ‘seaborn-dark-palette’
    • ‘seaborn-dark’
    • ‘seaborn-darkgrid’
    • ‘seaborn-deep’
    • ‘seaborn-muted’
    • ‘seaborn-notebook’
    • ‘seaborn-paper’
    • ‘seaborn-pastel’
    • ‘seaborn-poster’
    • ‘seaborn-talk’
    • ‘seaborn-ticks’
    • ‘seaborn-white’
    • ‘seaborn-whitegrid’
    • ‘seaborn’
    • ‘Solarize_Light2’
    • ‘tableau-colorblind10’
    • ‘_classic_test’

标签:None,plt,读取,seaborn,Matplotlib,fig,np,绘制,图片
来源: https://blog.csdn.net/weixin_44830542/article/details/111243130

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有