可参考:https://blog.csdn.net/xHibiki/article/details/84866887
散点图
主要参数说明如下:
x,y:数组
s:散点图中点的大小,可选
c:散点图中点的颜色,可选
marker:散点图的形状,可选
alpha:表示透明度,在 0~1 取值,可选
linewidths:表示线条粗细,可选
```
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
#数据准备
height = [155,158,160,167,170]
weight=[40,42,45,50,60]
#绘图 透明度为0.7
plt.scatter(x=height,y=weight,alpha=0.7)
plt.xlabel('height')
plt.ylabel('weight')
plt.show()
```
散点图柱形图与直方图
区别:
柱形图展示类别(非数值)的频数,柱状图是分开排列。
直方图展示各组数据的频数,分组数据具有连续性,因此直方图的各矩形通常是连续排列,
直方图与柱形图的区别直方图
hist(x, bins=None,color=None, label=None, stacked=False, normed=None, data=None, **kwargs)
主要参数说明如下:
bins:直方图中箱子 (bin) 的总个数。个数越多,条形带越紧密。
color:箱子的颜色。
normed:对数据进行正则化。决定直方图y轴的取值是某个箱子中的元素的个数 (normed=False), 还是某个箱子中的元素的个数占总体的百分比 (normed=True)。
```
import numpy as np
import matplotlib.pyplot as plt
aveage = 100 #平均值
sigma = 20 #标准差
#设置随机数种子,为了使每次随机树生成的结果一样
np.random.seed(1)
a= np.random.randn(2000)#生成2000个标准正太分布0-1的数
x=aveage + sigma*a
#画直方图,设定50个箱子bins,采用正则化normed=True
plt.hist(x,bins=50,color='red',normed=True)
plt.title("hist test")
plt.show()
```
直方图饼图
plt.pie(x,labels=标签列表 ,autopct = 1)
x为传入的值,labels为饼图各块的标签,autopct为是否显示饼图各块的占比百分数
```
import matplotlib.pyplot as plt
x = [20,40,40]#设置饼图各块数值
labels = 'A','B','C'#设置饼图各块标签
#autopct设置显示百分比, ‘%.0f%%’中的数字表示保留小数点后几位,此处为0表示保留0位
plt.pie(x, labels=labels, autopct = '%.0f%%')
plt.show()
```
显示多个图
- plt.subplot(x,y)
```
names = ['BMW', 'Benz', 'Audi']
values = [30, 10, 20]
plt.subplot(221) #构建2x2张图中的第1张子图
plt.bar(names, values) #统计图
plt.subplot(222)
plt.scatter(names, values) #散点图
plt.subplot(223)
plt.plot(names, values) #折线图
plt.suptitle('三种图示',fontname='SimHei')
plt.show()
```
多个图表
网友评论