突出显示 matplotlib 散点图中的特定点

Posted

技术标签:

【中文标题】突出显示 matplotlib 散点图中的特定点【英文标题】:Highlight specific points in matplotlib scatterplot 【发布时间】:2016-11-25 12:48:01 【问题描述】:

我有一个包含 12 列数据的 CSV。 I'm focusing on these 4 columns

现在我已经绘制了“Pass def”和“Rush def”。我希望能够突出散点图上的特定点。例如,我想在绘图上突出显示 1995 DAL 点并将该点更改为黄色。

我从 for 循环开始,但不知道该去哪里。任何帮助都会很棒。

这是我的代码:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import csv
import random

df = pd.read_csv('teamdef.csv')

x = df["Pass Def."]
y = df["Rush Def."]
z = df["Season"]

points = []
for point in df["Season"]:
    if point == 2015.0:

    print(point)


plt.figure(figsize=(19,10))
plt.scatter(x,y,facecolors='black',alpha=.55, s=100)
plt.xlim(-.6,.55)
plt.ylim(-.4,.25)
plt.xlabel("Pass DVOA")
plt.ylabel("Rush DVOA")
plt.title("Pass v. Rush DVOA")
plot.show

【问题讨论】:

【参考方案1】:

你可以分层多个散点,所以最简单的方法可能是

plt.scatter(x,y,facecolors='black',alpha=.55, s=100)
plt.scatter(x, 2015.0, color="yellow")

【讨论】:

好的。这就说得通了。我收到了这个错误:ValueError: x and y must be the same size。我认为它将 2015.0 识别为 y 值 是的,抱歉,不清楚。我的意思是你需要绘制 y 值所在的 x 值。所以:plt.scatter(df["Pass Def."][df['Season']== 2015.0], 2015.0, color="yellow")

以上是关于突出显示 matplotlib 散点图中的特定点的主要内容,如果未能解决你的问题,请参考以下文章

在 matplotlib 图中,我可以突出显示特定的 x 值范围吗?

matplotlib 在散点图中不显示图例

R语言ggplot2可视化绘制散点图(scatter plot)使用gghighlight包突出高亮散点图中的特定数据点并添加文本标签(highlight and text annotation)

R语言ggplot2可视化绘制散点图(scatter plot)使用gghighlight包突出高亮散点图中的特定数据点并自定义添加彩色文本标签(color text annotation)

Python使用matplotlib可视化饼图为饼图添加标题和标签自定义设置突出饼图中的特定区块(Pie Chart)

来自 pandas 数据框的散点图中的 Matplotlib 图例