还剩5页未读,继续阅读
文本内容:
《数据可视化》期末作品设计说明文档
一、数据分析说明此次《数据可视化》课程期末项目我一共使用了10个库,接下来简单说明以下这些库和我使用过的函数.
1、NumPy NumPy全称是NumericalPython是Python语言的一个扩展程序库,能够支持大量的维度数组与矩阵运算,同时它是python语言中最基础和最强大的科学计算和数据处理的工具包,像数据分析工具pandas也是基于numpy构建的,机器学习包scikitTearn也大量使用了numpy方法由于它的全称比较长,一般情况下都默认给它起个别名np这个库包含许多的函数(如图一),但我时常用到的函数并不多,一般常用的会有arange、random等而我此次使用这个库主要是使用里面的数组功能[]:np.arnp.arange▲np.arccosnp.arccoshnp.arcsinnp.arcsinhnp.arctannp.arctan2np.arctanhnp.argmaxnp.argmin▼图1Numpy库下函数图
2、Pandas Pandas库是一个免费、开源的第三方Python库,是Python数据分析必不可少的工具之一,它为Python数据分析提供了高性能,且易于使用的数据结构,即Series和DataFrame(>Pandas包括文件读写、统计学函数、缺失值处理、以及数据可视化等,而且它还是在NumPy库的基础上构建而来,所以一般情况下会一起采用numpy和pandas它和numpy-一样,一般情况下也会起一个别名pdo这个库也包含了很多的函数(如图二),平常使用到比较多的函数一般是readexcel、readcsv^DataFrame等我此次使用这个库主要是使用里面的读取文件数据的功能这个函数的使用非常的高,因为读文件数据是非常普遍的事情图2Pandas库下函数图
3、Matplotlib Matplotlib是Python的绘图库,它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式它是一个非常强大的Python画图工具,我们可以使用该工具将很多数据通过图表的形式更直观的呈现出来Matplotlib可以绘制线图、散点图、等高线图、条形图、柱状图、3D图形、甚至是图形动画等等它的拥有着非常多的方法(如图三),最经常使用的就是pyplot和colors了,pyplot一般给起个别名:pit这个模块下的方法特别多,像title、xticks、ylabeRshow等,这些都是绘制图形非常常用的方法,此次我也采用了以上的方法来绘制我的目标图形Colors顾名思义就是用来调节颜色的方法图3Matplotlib库下函数图
4、Seaborn Seaborn是一种基于Matplotlib的图形可视化它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表它其实是在Matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用Seaborn就能做出很具有吸引力的图,而使用Matplotlib就能制作具有更多特色的图,通俗地讲Seaborn就是为Matplotlib的补充它拥有比较多的库(如图四),经常使用的函数有Boxplot、heatinap等此次我使用到了heatmap来调节热力图的一些参数,例如颜色等importseaborn:importseaborn:seaborn.[]:seaborn.h|seaborn.heatmap[].seaborn.hls_palette--seaborn.husl_palette图4Seaborn库下函数图
5、Pyecharts uPyecharts是一个用于生成Echarts图表的类库Echarts是百度开源的一个数据可视化JS库用Echarts生成的图可视化效果非常棒(如图五)但有个不好的特点,这个库有时候并不好安装,有时得花好长时间才能装下来它的方法也是有相当多的,但比较经常用的ptions、charts等此次我也采用到了options和charts中PieOptions一般可用来设置某个图形的参数,例如图形标题,大小,占比等用Pie来处理一下数据和图形的占比情况的处理lineBeMrtiful.lne.ctMnLme8etr^qiLineUfle_5tyte.and_«en_5rWLint♦Ixw.martipointLine-lMW..m*rlclaneLine-Une.rtemMyleIme•lNW.ar
2.Uyle3D|Frtiaiine3OLtne3dLtn«3d.MtoroQUIZ3d-Lin«ld_rectAngulM_pfO|«ct*onLiquidliquid•laqutd.ihipe.dianKmdliquidMvhiptejiquid-pyechrtsflil效―图5Pyecharts库下函数图
6、jieba jicba是优秀的第三方中文词库,中文分词指的是将一个汉字序列切分成一个一个单独的词分词就是将连续的字序列按照一定的规范重新组合成词序列的过程jieba分词有三种模式,分别是精确模式、全模式、搜索引擎模式精确模式将句子最精确的分开,适合文本分析全模式将句子中所有可以成词的词语都扫描出来,速度快,不能解决歧义(有冗余),搜索引擎模式在精确的基础上,对长词再次切分,提高召回率(有冗余)可以根据不同需求选择不同的模式
7、wordcloud wordcloud库是优秀的词云展示第三方库,可以将一段文本变成词云,它是以词语为基本单位,更加直观和艺术的展示文本它下面的函数并不是特别的多(如图六),而且都是以词云有关的此次我主要采用了WordCloud来制作产品类别的词云图,而且是以各个类别的销售额作为其词频,以一个房作为背景图,来代表一个门店[0一importwordcloud图6wordcloud库下函数图及词云图
8、PIL全称PythonImagingLibrary是Python平台一个功能非常强大而且简单易用的图像处理库它下面的方法也不是很多如图七,主要是跟图像的处理有关,目前我接触过的一个模块就只有Image我此次使用Image主要是用来读取存储在本地电脑的照片,平时用的次数并不多[⑴[0rt叩,forainrange1tablejois:t]pil.icall=tableronaluesa
[0]=cull=tableronaluesa
[1]frequencies;all]=intcullcolorjask=nmpy.arraydmage.open5house2jpginwcl=IordCloudet图7PIL库下函数图
9、collections collections是Python的一个内置模块,通俗的讲它就是一个容器,可以将东要西进行打包它也有以下的方法如图八,此次用到了Counter计算hash的对象importcollectionscollections.图8collections库下函数图
10、xlrd xlrd说白了就是■个打开Excel文件读取数据的方法它所包含的方法基本都是对EXCEL操作有关(如图九)importxlrdxlrd.图9xlrd库下函数图
二、心得和体会此次的《数据可视化》课程期末项目主要是分为两个部分,一是按时老师布置的要求对八个问题实现可视化,二是按时所使用过的库和函数来做个简要的说明并说明自己的心得与体会整个Python可视化文件我一共做出了11个图形,其中1个折线图、4个条形图、1个热力图、1个环形图、1个玫瑰图(我觉得与饼图差不太多)、1个词云图(采用房子作为背景,象征着一个门店),2个复合图在这些图形我觉得最好做的无非就是折线图、条形图和环形图但环形图又需得用指定的库去做一一pyecharts库,这个库绘制的图形确实漂亮,还可以生成动态的hlml文件,但在装这个库的时候确实出了一些问题一开如在命令行用命令pipinstallpyecharts准备安装时,出现了警告,说pip版本不高,请升级版本,按照要求输入python-mpipinstall-upgradepip的时候,又出现了这样警告的情况(如图十),最后还是上的GitHub才找到了解决的方法最终才将pyecharts这个库给安装成功了最后也是成功的把环形图和玫瑰花图给做了出来其他的一些图形基本没遇到的什么问题,词云图是由于上一次的Python基础课有要求做一份期末报告,我在找资料的时候发现了这个图,觉得有意思就去弄明臼了,所以这次再做一次词云图基本上没啥问题图10pyecharts安装时错误报告图对于这次的报告,给我一些启发,就是当遇到错误时,真的是可以直接找度娘,或者直接上CSDN和GitHub上寻找解决的方法,另外就是不要害怕新事物,正是因为接触新事物才能使知识面更广阔对于未来,我希望我能达到看得代码、能够得心应手的使用代码,分分钟搞定可视化,哈哈哈!In
[2]:inportpandasaspdIn
[2]:importpandasasPdIn[]:pd.In[]:pd.re|pd.Categorical|人pd.Categoricallndexpd.DataFraroepd.DateOffsetpd.Datetimelndexpd.ExcelFilepd.ExcelWriterpd.Exprpd.Float641ndexpd.Grouper▼pd.read_clipboardpd.read_csvpd.read_excelpd.read_featherpd.read_fwfpd.read_gbqpd.read_hdfpd.read_htmlpd.read_jsonpd.read_msgpack▲▼.3]:importmatplotlib[]:matplotlib.matplotlib.MutableMapping▲一matplotlib.ReParamsmatplotlib.URL.REGEXmatplotlib.Verbosematplotlib.absolute.importmatplotlib.atexitmatplotlib.ebookmatplotlib.checkdep_dvipngmatplotlib.checkdep_ghostscriptmatplotlib.checkdepinkscape▼[4J:importmatplotlib.pyplotaspit[1pit.pit.Arrowpit.Artistpit.AutoLocatorpit.Axespit.Buttonpit.Circlepit.Figurepit.FigureCanvasBasepit.FixedFormattercollections.ChainMap▲tcollections.Countercollections.Iterablecollections.Mappingcollections.MutableMappingcollections.OrderedDictcollections.Sizedcollections.UserDictcollections.UserListcollections.UserString▼Ixlrd.Book▲xlrd.FMLA_TYPE_ARRAYxlrd.FMLA_TYPE_CELLxlrd.FMLA_TYPE_COXD_FMTxlrd.FMLA_TYPE_DATA_VALxlrd.FMLA_TYPE_NAMExlrd.FMLA_TYPE_SHAREDxlrd.MMAP_AVAILABLExlrd.Operandxlrd.Ref3D▼。