0. 项目背景:
好久没碰代码了,今天开始重新捡起Python。首先对环境做个简单的介绍:
Python环境:Python3.7 编译器:Pycharm Community
具体怎么配环境我就不细说了,因为是以前配的环境。
这次主要是使用matplotlib和bubbleplot这两个package来对iris数据集进行数据可视化,
不过这里的iris是data格式,我们的项目会使用csv格式,需要iris.csv的朋友可以私信找我要。
Iris数据集简介:鸢尾属(拉丁学名:Iris L.), 单子叶植物纲, 鸢尾科多年生草本植物, 开的花大而美丽, 观赏价值很高. 鸢尾属约300种, Iris数据集中包含了其中的三种: 山鸢尾(Setosa), 杂色鸢尾(Versicolour), 维吉尼亚鸢尾(Virginica), 每种50个数据, 共含150个数据. 在每个数据包含四个属性: 花萼长度,花萼宽度,花瓣长度,花瓣宽度, 可通过这四个属性预测鸢尾花卉属于 (山鸢尾, 杂色鸢尾, 维吉尼亚鸢尾) 哪一类(之后会上线机器学习项目!期待吧!).项目过程
作为高度封装的语言,Python的方便快捷来自那些超级好用的包们,因此在本次项目过程也会大量地使用一些package,但是不知道Pycharm抽什么风,直接用编译器下载这些包往往会出现超时的问题,所以在这里推荐大家使用清华镜像下载,也就是直接在cmd里运行下面这句话+包名:
这里就是下载numpy的举例,大家可以随意下载需要的包。
接下来就是怒写代码了,话不多说先贴一波代码:
from __future__ import division
import pandas as pd
# We'll also import seaborn, a Python graphing library
import warnings # current version of seaborn generates a bunch of warnings that we'll ignore
warnings.filterwarnings("ignore")
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="white", color_codes=True)
# Next, we'll load the Iris flower dataset, which is in the "../input/" directory
iris = pd.read_csv("/Users/jay/Desktop/datasets/iris/Iris.csv") # the iris dataset is now a Pandas DataFrame
# Let's see what's in the iris data - Jupyter notebooks print the result of the last thing you do
iris.head()
到这里为止我们成功地导入了Iris数据集,然后我们使用绚丽的bubbly来展示数据,这个数据集有6列,6个特征,这里设置x,y,z轴,气泡,气泡大小,气泡颜色分别代表6列
from bubbly.bubbly import bubbleplot
from plotly.offline import plot
figure = bubbleplot(dataset=iris, x_column='SepalLengthCm', y_column='PetalLengthCm', z_column='SepalWidthCm',
bubble_column='Id', size_column='PetalWidthCm', color_column='Species',
x_title="SepalLength(Cm)", y_title="PetalLength(Cm)", z_title='SepalWidth(Cm)',
title='IRIS Visualization',
x_logscale=False,scale_bubble=0.1,height=600)
plot(figure, config={'scrollzoom': True})
然后!!!
Tada!我们的图就出来了!想起了以前用R跑出来的图,那叫一个丑,这个图也太好看了!
展示完图,我们来说说遇到的两个小问题。
首先是,在file的开头我的第一行代码是:
from __future__ import division
之所以把它放第一行,是因为它的前面不能跟任何注释,否则会报错。
其次就是原本我的代码中有:
from plotly.offline import init_notebook_mode, iplot init_notebook_mode()
使用了iplot,然而报了这样的错:
ImportError: `iplot` can only run inside an IPython Notebook.
从名字看,感谢这位斯拉夫大兄弟,我去掉了iplot改用plot,语句变为文中的代码,轻松解决!
2. 项目总结
第一个项目,很简单,参照了很多前人写的代码,没啥总结的,大家一起进步吧!
参考链接:/benhamner/python-data-visualizations「已注销」:Python数据可视化, 看这一篇就够了Iris数据集实战 - Star_Zhao - 博客园
作者:钴铬氢气
06/08/