Zaoqi's Blog -> Python数据分析教程 -> 图解Pandas ->
散点图
散点图¶
在线刷题
检查 or 强化 Pandas
数据分析操作?👉在线体验「Pandas进阶修炼300题」
Note
本页面代码可以在线编辑、执行!
导入与预设¶
虽然在 pandas
中可以直接调用 matplotliab
进行可视化,但是依旧需要进行相关设置,例如字体、精度等。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Songti SC']
plt.rcParams['axes.unicode_minus']=False
默认方法¶
重新生成数据 df4 ,并制作散点图,X轴为 a,Y轴为 b
df4 = pd.DataFrame(np.random.rand(50, 4), columns=["a", "b", "c", "d"])
df4["species"] = pd.Categorical(
["setosa"] * 20 + ["versicolor"] * 20 + ["virginica"] * 10
)
df4.plot.scatter(x="a", y="b", figsize=(8, 6))
plt.show()
修改散点大小¶
在上一题的基础上,让散点的大小随着值变化
df4.plot.scatter(x="a", y="b", figsize=(8, 6), s=df4["c"] * 200)
plt.show()
进一步优化¶
在上一题的基础上,进行如下设置
散点固定
调低透明度
增加黑色边缘线
df4.plot.scatter(x="a", y="b", figsize=(8, 6), marker='o',
s=100, linewidths=1, alpha=0.8, edgecolors='black')
plt.show()
颜色渐变¶
在上一题的基础上,将散点的颜色设置为渐变色
df4.plot.scatter(x="a", y="b",c="c", figsize=(8, 6), marker='o',
s=100, linewidths=1, alpha=0.8, edgecolors='black')
plt.show()
分组绘制¶
将 ab 分为一组,cd分为一组,制作三散点图
ax = df4.plot.scatter(x="a", y="b", color="DarkBlue", label="Group 1", figsize=(8, 6), marker='o',
s=80, linewidths=1, alpha=0.8, edgecolors='black')
df4.plot.scatter(x="c", y="d", color="DarkGreen", label="Group 2", ax=ax, figsize=(8, 6), marker='o',
s=80, linewidths=1, alpha=0.8, edgecolors='black');
On this page