2 python基础

看的一本书:深度学习之PyTorch实战计算机视觉。怕以后找不到,所以先放在这里。

Matplotlib绘画库

在Notebook中演示

线性图

import matplotlib.pyplot  as plt

import numpy as np

%matplotlib inline

np.random.seed(42)
a = np.random.randn(30)
b = np.random.randn(30) plt.plot(a,
"r--o", b,"b-*")
x = np.random.randn(30)生成30个随机数比并赋值给变量x。

plt.plot(x, "r--o")将这30个随机参数以点的方式回执出来并用线条进行连接。参数r--o标记参数点使用的形状,连接点使用的线条颜色和线型。

用于设置线型图中线条颜色的常用参数如下:
b 指定描绘的线条颜色为蓝色
g 绿色
r 红色
c 蓝绿色
m 洋红色
y 黄色
k 黑色
w 白色
用于设置线性图中标记参数点形状的常用参数如下:
o 指定标记实际使用点使用的形状为圆形
* *型
+ +型
x x型
用于设置线性图中连接参数点线型形状的常用参数如下:
- 指定线条形状为实线
-- 虚线
-. 点实线
: 点线

标签和图例

plt.title("tablename")

标签的显示代码:plt.xlabel("X")    plt.ylabel("Y")

图例的显示代码:plt.legend([X,Y],["X","Y"]) 第一个列表参数是在图中实际使用的标记和线型,第2个列表参数是对应图例的文字描述

子图(Subplot)

a = np.random.randn(30)
b = np.random.randn(30)
c = np.random.randn(30)
d = np.random.randn(30)

fig = plt.figure()
ax1 = fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
ax3 = fig.add_subplot(2,2,3)
ax4 = fig.add_subplot(2,2,4)

A, = ax1.plot(a, "r--o")
ax1.legend([A], ["A"])
#BCD一样的,略写了

 fig = plt.figure()定义了一个实例,向该实例中添加子图。(2,2, 1)前两个数字表示把整块图分成了两行两列,最后一个数字表示具体使用哪一张子图进行绘制

散点图(scatter)

import matplotlib.pyplot  as plt
import numpy as np
%matplotlib inline

np.random.seed(42)
x = np.random.randn(30)
y = np.random.randn(30)

plt.scatter(x,y,c="g", marker="o", label="(X,Y)")
plt.title("Example")
plt.xlabel("X")
plt.ylabel("Y")
plt.legend(loc=1)
plt.show()
plt.scatter(x,y,c="g", marker="o", label="(X,Y)")为核心代码。
c 参数点颜色
marker 参数点形状
label 参数点使用的图例
plt.legend(loc=1)对图例的位置进行设置。loc=0,最好的位置;1右上角的位置;2左上角;3左下角;4右下角位置

直方图(Histogram)

import matplotlib.pyplot  as plt
import numpy as np
%matplotlib inline

np.random.seed(42)
x = np.random.randn(1000)


plt.hist(x, bins=20, color="g")
plt.title("Example")
plt.xlabel("X")
plt.ylabel("Y")
plt.show()

核心代码:plt.hist(x, bins=20, color="g"),bins用于指定我们绘制的直方图条纹的数量。

饼图

import matplotlib.pyplot  as plt

labels = ['Dogs', 'Cats', 'Birds']
size = [15, 50, 35]  #所占百分比

plt.pie(sizes, explode=(0,0,0.1), labels=labels, autopct='%1.1f%%', startangle=90)
plt.axis('equal')
plt.show()

核心代码:

plt.pie(sizes, explode=(0,0,0,1), labels=labels, autopct='%1.1f%%', startangle=90)
sizes三个数字确定每部分所占比例;
explode设置为0,0,0.1就能突出第三部分
autopct将sizes中的数据浮点精度进行显示
startangle绘制第一块饼图时与x轴正方向的夹角度数
plt.axis('equal')是必不可少的,用于保证x轴和y轴的刻度保持一样,保证饼图是圆的
 
 
原文地址:https://www.cnblogs.com/loyolh/p/13471336.html