使用pyplot.scatter()画散点图

1.pyplot.scatter() 函数的使用

pyplot.scatter(x, y, marker = '每个点的大小', s = '每个点的面积大小', c = '每个点的颜色', alpha = '每个点显示的颜色深浅,值为0-1, 越接近于1显示越深,默认为None', label='图例')
plt.legend() # 显示图例

2.测试.

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd



# 1.创建 DataFrame 对象
df = pd.DataFrame({'高等数学' : [80, 92, 88, 90],
                   '线性代数' : [98, 86, 88, 92],
                   'C语言程序设计' : [80, 66, 95, 88],
                   '数据结构' : [66, 81, 72, 75]})
df.to_csv(r'..\data\grade.csv', encoding='utf_8_sig')
print(df)
# 画成绩的散点图
colors1 = '#C0504D'
colors2 = '#00EEEE'
colors3 = '#FF6600'

area1 = np.pi * 2 ** 2    # 半径为2的圆的面积
area2 = np.pi * 3 ** 2
area3 = np.pi * 4 ** 2
# pyplot 显示中文时会出现乱码
# 正常显示中文
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']

plt.scatter(df.index.values, df.iloc[:, 0], marker='^', s = area3, c = colors1, alpha=1, label = '高等数学')
plt.scatter(df.index.values, df.iloc[:, 1], marker='*', s = area2, c = colors2, alpha=1, label = '线性代数')
plt.scatter(df.index.values, df.iloc[:, 2], marker='o', s = area1, c = colors3, alpha=1, label = 'C语言程序设计' )
plt.scatter(df.index.values, df.iloc[:, 3], marker='.', s = area1, c = colors1, alpha=1, label = '数据结构' )
plt.legend()    # 显示散点图中的label标签
plt.show()




版权声明:本文为y_h_k_666原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。