直方图与散点图|学习笔记

简介: 快速学习直方图与散点图

开发者学堂课程【Python 常用数据科学库:直方图与散点图】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/546/detail/7506


直方图与散点图

内容简介

一、直方图

二、散点图


一、直方图

Import numpy as np

Import matplotlib.pyplot as plt

对于直方图来说,最重要的就是数据,于是引用数据:

Data=np.random normal(0,20,1000)

有数据之后要分到一个 bin 当中,于是可以自己指定一个 bins:

Bins=np.arange(-100,100,5),表示从负100到100中,每5个取一个数。

接下来画出直方图:

Plt,hist(data,bins=bins)

Plt.show

总代码如下:

Import numpy as np

Import matplotlib.pyplot as plt

Data=np.random normal(0,20,1000)

Bins=np.arange(-100,100,5)

Plt,hist(data,bins=bins)

Plt.show

可以继续对其进行美化:对其最大值和最小值进行限制:

Plt.xlim([min(data)-5,max(data)-5]

通过以上代码之后,画出的就是最基本的直方图。

如果有2个数据分布,就需要重新指定,将其分别画出:

Import random

Data1=[ramdom gaus(15,10) for I in range (500)]

Data2=[ramdom gaus(5,5) for I in range (500)]

Bins=np.arange(-50,50,2.5)

Plt,hist(data1,bins=bins)

Plt,hist(data1,bins=bins)

Pl.show()

代码画出之后,直方图有很多个颜色,所以可以对其不指定颜色。

Import random

Data1=[ramdom gaus(15,10) for I in range (500)]

Data2=[ramdom gaus(5,5) for I in range (500)]

Bins=np.arange(-50,50,2.5)

Plt,hist(data1,bins=bins,label=’class1’)

Plt,hist(data1,bins=bins, label=’class1’)

Pl.show()

如果想看到堆叠的程度,就可以指定 Alpha 值:

Import random

Data1=[ramdom gaus(15,10) for I in range (500)]

Data2=[ramdom gaus(5,5) for I in range (500)]

Bins=np.arange(-50,50,2.5)

Plt,hist(data1,bins=bins,label=’class1’,alpha=0.3)

Plt,hist(data1,bins=bins, label=’class1’, alpha=0.3)

Pl.show()

此时就可以把2组数据分别画出来了,还可以加入标识。以上就是直方图的画法。


二、散点图

散点图,也就是将一些点分布在一个图中。数据复制之后,也就是指定了均值和方差。这样就可以通过均值和平方差将数据构造出来,可以直接查看如何将散点图画出。

首先指定 figure:

Plt.figure(figsize=(8,6))Plt.scatter(x1_samples[:,0],x1_samples[:,1],markaer=’x’,color=’blue’,alpha=0.3,label=’x1’)Plt.scatter(x2_samples[:,0],x1_samples[:,1],markaer=’o’,color=’red’,alpha=0.3,label=’x2’)Plt.scatter(x3_samples[:,0],x1_samples[:,1],markaer=’’,color=’green’,alpha=0.3,label=’x3’)

执行以上代码之后,系统报错。更改之后,代码如下:

Plt.figure(figsize=(8,6))Plt.scatter(x1_samples[:,0],x1_samples[:,1],markaer=’x’,color=’blue’,alpha=0.3,label=’x1’)Plt.scatter(x2_samples[:,0],x1_samples[:,1],markaer=’o’,color=’red’,alpha=0.3,label=’x2’)Plt.scatter(x3_samples[:,0],x1_samples[:,1],markaer=’’,color=’green’,alpha=0.3,label=’x3’)

Plt.show

执行以上代码之后。颜色太浅,可以更改阿尔法的值,再加入标识。代码的含义就是按散点图当中的第一维为数据传进来,第二维数据传进来,长什么样子,什么颜色,设置阿尔法值就可以了。把直方图和散点图的区别就在于接口如何调。

在构造一个数据,X 和 Y 就相当于当前的坐标:

Plt.figure(figsize=(8,6))

用当前的东西再画一个散点图。现在都是一个一个点,想将点的坐标写出来。就分别传入它的坐标。然后指定 marker:

Plt.scatter(x_coords,y_croords,y_coords,marker=’s’,s=50)

Plt.show()

图片如下:

image.png

还想加入每个点的具体坐标,就要加入

for X,Y in zip(x_coords, y_coords):

Plt.annotate(‘(%s,%s)%(x,y),xy=(x,y),xytext=(0,-15),textcoords=’offset points’)

此时画出了每个点的坐标。但坐标与点没有对齐,就可以加入 ha=’center’。散点图当中经常会加坐标,以上就是加坐标的教程。 还可以指定一个均值和标准差,指定好 figure size 之后构造数据。在数据当中指定一个指标,对于散点图来说要画许多点,这些点能否按照大小不同做一个规范,就可以通过指定:

R=X**2

在散点图当中就要把数据传进去,第一位是0,第二位是1,再继续指定颜色, Size 可以是指定的数乘当前的比例。代码如下。画出来的图就是以00为圆心算出来的平方和。随着平方和越大 size 就会变大。代码如下:

cov_mat1=np.array([[1.0].[0.1]])

X = np. random. multivariate_normal (mu_vecl, cov_matl. 500)

fig = plt.figure(figsize=(8,6))

R=X**2

R_sun=R. sun(axís = 1)

plt. scatter(X[:,0],X[:, 1],color='grey',marker='o',s=20*

R_sun,alpha=0.5)

plt.show()

可以按照设计好的模式来自定义点的大小。

相关文章
|
机器学习/深度学习 API Python
seaborn画直方图、条形图、盒图、散点图等常用图形
seaborn画直方图、条形图、盒图、散点图等常用图形
204 0
seaborn画直方图、条形图、盒图、散点图等常用图形
|
10月前
|
数据挖掘
ggplot2|从0开始绘制箱线图
ggplot2|从0开始绘制箱线图
|
10月前
|
数据挖掘
ggplot2|从0开始绘制直方图
ggplot2|从0开始绘制直方图
160 0
|
11月前
|
数据可视化 数据挖掘 Python
跟着Nature学作图:R语言ggplot2频率分布直方图和散点图添加误差线
跟着Nature学作图:R语言ggplot2频率分布直方图和散点图添加误差线
|
11月前
|
数据可视化 数据挖掘 Python
跟着Nature学作图:R语言ggplot2柱形图添加误差线和频率分布直方图
跟着Nature学作图:R语言ggplot2柱形图添加误差线和频率分布直方图
|
开发者 Python
matplotlib画折线图、直方图、饼图、散点图等常见图形
matplotlib画折线图、直方图、饼图、散点图等常见图形
207 0
matplotlib画折线图、直方图、饼图、散点图等常见图形
|
开发者 Python
条形图|学习笔记
快速学习条形图
57 0
条形图|学习笔记
|
API Python
Matplotlib常见绘图绘制(折线图、散点图、柱状图、直方图、饼图)
Matplotlib常见绘图绘制(折线图、散点图、柱状图、直方图、饼图)
286 0
Matplotlib常见绘图绘制(折线图、散点图、柱状图、直方图、饼图)
|
机器学习/深度学习