python学习06之柱形图
1、加载并检查数据
# Path of the file to read iris_filepath = "../input/iris.csv" # Read the file into a variable iris_data iris_data = pd.read_csv(iris_filepath, index_col="Id") # Print the first 5 rows of the data iris_data.head()
2、创建柱形图
#创建柱形图
sns.distplot(a=iris_data['Petal Length (cm)'], kde=False)
代码解析:
我们使用两个额外的信息自定义命令的行为:
a=选择要绘制的列(在本例中,我们选择了“花瓣长度(cm)”)。
在创建直方图时,我们总是会提供kde=False,因为省略它会创建一个稍微不同的图。
3、创建密度图
这种类型的图是内核密度估计(KDE)图。如果您不熟悉KDE图,您可以将它看作一个平滑的直方图。
为了绘制KDE图,我们使用sns.kdeplot命令。
将shade=True colors设置为曲线下方的区域(data=具有与上面直方图相同的功能)
#创建KDE图
sns.kdeplot(data=iris_data['Petal Length (cm)'], shade=True)
如果你还不了解,那如图所示:
3、2D KDE图
这个图是不让我们局限在一个列中,而是针对多个列形成的二位KDE图,命令是sns.jointplot()
sns.jointplot(x=iris_data['Petal Length (cm)'], y=iris_data['Sepal Width (cm)'], kind="kde")
注意:
图顶部的曲线是x轴上数据的KDE图(本例中为iris_data['Petal Length(cm)']),以及图右侧的曲线是y轴数据的KDE图(本例中为iris_data['Sepal Width (cm)'])。
4、创建彩色图
首先我们将文件分成三个独立的文件,每个物种一个:
# Paths of the files to read iris_set_filepath = "../input/iris_setosa.csv" iris_ver_filepath = "../input/iris_versicolor.csv" iris_vir_filepath = "../input/iris_virginica.csv" # Read the files into variables iris_set_data = pd.read_csv(iris_set_filepath, index_col="Id") iris_ver_data = pd.read_csv(iris_ver_filepath, index_col="Id") iris_vir_data = pd.read_csv(iris_vir_filepath, index_col="Id") # Print the first 5 rows of the Iris versicolor data iris_ver_data.head()
接着我们为每一个物种创建一个柱形图:
# Histograms for each species sns.distplot(a=iris_set_data['Petal Length (cm)'], label="Iris-setosa", kde=False) sns.distplot(a=iris_ver_data['Petal Length (cm)'], label="Iris-versicolor", kde=False) sns.distplot(a=iris_vir_data['Petal Length (cm)'], label="Iris-virginica", kde=False) # Add title plt.title("Histogram of Petal Lengths, by Species") # 强制图例出现 plt.legend()
结果如图所示:
注意:这种情况下,图不会自动出现,所以我们要使用plt.legend()强制图的出现。
同理,我们为每一个物种创建一个KDE图:
# KDE plots for each species sns.kdeplot(data=iris_set_data['Petal Length (cm)'], label="Iris-setosa", shade=True) sns.kdeplot(data=iris_ver_data['Petal Length (cm)'], label="Iris-versicolor", shade=True) sns.kdeplot(data=iris_vir_data['Petal Length (cm)'], label="Iris-virginica", shade=True) # Add title plt.title("Distribution of Petal Lengths, by Species")
结果如图所示:
此次学习到此结束!!!!!