Pandas:使用多列创建散点图
您可以使用以下基本语法在 pandas DataFrame 中使用多列创建散点图:
import pandas as pd #create scatter plot of A vs. B ax1 = df. plot (kind=' scatter ', x=' A ', y=' B ', color=' r ') #add scatter plot on same graph of C vs. D ax2 = df. plot (kind=' scatter ', x=' C ', y=' D ', color=' g ', ax=ax1)
此特定示例使用 A 列和 B 列创建散点图,然后使用 C 列和 D 列在同一图表上覆盖另一个散点图。
以下示例展示了如何在实践中使用此语法。
示例:使用多列创建 Pandas 散点图
假设我们有以下 pandas DataFrame,显示 A 队和 B 队各个篮球运动员的得分和助攻:
import pandas as pd #createDataFrame df = pd. DataFrame ({' A_assists ': [3, 4, 5, 6, 7, 7, 8, 9], ' A_points ': [6, 8, 8, 10, 13, 13, 15, 16], ' B_assists ': [3, 4, 4, 5, 5, 6, 7, 7], ' B_points ': [7, 9, 9, 13, 10, 11, 12, 13]}) #view DataFrame print (df) A_assists A_points B_assists B_points 0 3 6 3 7 1 4 8 4 9 2 5 8 4 9 3 6 10 5 13 4 7 13 5 10 5 7 13 6 11 6 8 15 7 12 7 9 16 7 13
我们可以使用以下语法使用A_assists和A_points列创建散点图,然后使用B_assists和B_points列在同一图表上覆盖另一个散点图:
#create scatter plot of A_assists vs. A_points ax1=df. plot (kind=' scatter ', x=' A_assists ', y=' A_points ', color=' r ', label=' A ') #add scatter plot on same graph using B_assists vs. B_points ax2=df. plot (kind=' scatter ', x=' B_assists ', y=' B_points ', color=' g ', label=' B ', ax=ax1) #specify x-axis and y-axis labels ax1. set_xlabel (' Assists ') ax1. set_ylabel (' Points ')
最终结果是一个散点图,其中包含红色的A_assistors和A_points列的值以及绿色的B_assistors和B_points列的值。
注意#1 :标签参数指定在绘图图例中使用的标签。
注意#2 :在此示例中,我们使用两组列在同一个图表上绘制两个散点图。但是,您可以使用ax3 、 ax4等。向散点图中添加任意数量的列。
其他资源
以下教程解释了如何在 pandas 中执行其他常见任务: