matplotlib绘制散点图详解(附代码)

目录

1、绘制单个点

2、scatter()绘制一系列点 

3、修改或删除轮廓颜色

4、修改点颜色


plot函数可以实现绘制折线图,scatter()函数可以绘制散点图。


1、绘制单个点

使用方法:向scatter()函数传递一对x和y坐标

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import matplotlib.pyplot as plt

plt.scatter(2, 4, s=200)   # s表示点的尺寸

# 设置图表标题, 并给坐标轴加上标签
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value", fontsize=14)
plt.ylabel("Square of Value", fontsize=14)

# 设置刻度标记的大小
plt.tick_params(axis='both', which='major', labelsize=14)

plt.show()

运行结果: 


2、scatter()绘制一系列点 

要绘制一系列点,需要向scatter()传递两个分别包含x值和y值的列表:

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4, 5]
y_values = [1, 4, 9, 16, 25]
plt.scatter(x_values, y_values, s=100)   # 指定线条宽度

# 设置图表标题, 并给坐标轴加上标签
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value", fontsize=14)
plt.ylabel("Square of Value", fontsize=14)

# 设置刻度标记的大小
plt.tick_params(axis='both', which='major', labelsize=14)

plt.show()

运行结果: 


3、修改或删除轮廓颜色

在调用scatter()时传递实参edgecolor=‘指定颜色’,即可修改轮廓颜色。如果设置为'none',则表示删除轮廓颜色,即没有轮廓

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import matplotlib.pyplot as plt


x_values = list(range(1,5001))
y_values = [x**2 for x in x_values]
plt.scatter(x_values, y_values, s=50, edgecolors='red')   # 指定线条宽度


# 设置图表标题, 并给坐标轴加上标签
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value", fontsize=14)
plt.ylabel("Square of Value", fontsize=14)

# 设置刻度标记的大小
plt.tick_params(axis='both', which='major', labelsize=14)

plt.show()

运行结果(左图是颜色指定红色,右图颜色指定黑色):


4、修改点颜色

在调用scatter()时传递实参c=‘指定颜色’,即可修改点颜色。

为c指定颜色有两种方式:(1)直接指定颜色英文,如红色-red,黄色-yellow等;(2)使用RGB颜色自定义颜色:将c设置为一个元组,其中包含三个0~1之间的小数值,分别代表红色、绿色和蓝色分量。如(0,0,08)则表示蓝色。

应用中,如果修改点颜色,则将edgecolor颜色删除(edgecolor='none'),这样能够使得颜色一致。

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import matplotlib.pyplot as plt


x_values = list(range(1,5001))
y_values = [x**2 for x in x_values]
plt.scatter(x_values, y_values, s=50, c='yellow', edgecolors='none')   # 指定线条宽度


# 设置图表标题, 并给坐标轴加上标签
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value", fontsize=14)
plt.ylabel("Square of Value", fontsize=14)

# 设置刻度标记的大小
plt.tick_params(axis='both', which='major', labelsize=14)

plt.show()

猜你喜欢

转载自blog.csdn.net/Sophia_11/article/details/84783444