有时我们不仅需要查看单个变量的分布,同时也需要查看变量之间的联系,这时就需要用到联合分布图. 这里利用Jake Vanderplas所著的<Python数据科学手册>一书中的数据,学习画图. 数据地址:http://raw.githubusercontent.com/jakevdp/marathon-data/master/marathon-data.csv 先来看一下这个数据文件(此处只摘取部分): age gender split final 0 33 M 01:05:38 02:08:5…
由于直方图受组距(bin size)影响很大,设置不同的组距可能会产生完全不同的可视化结果.因此我们可以用密度平滑估计来更好地反映数据的真实特征.具体可参见这篇文章:https://blog.csdn.net/unixtch/article/details/78556499. 还是用我们自己创建的一组符合正态分布的数据来画图. 准备工作:先导入matplotlib,seaborn和numpy,然后创建一个图像和一个坐标轴 import numpy as np from matplotlib im…
矩阵图非常有用,人们经常用它来查看多个变量之间的联系. 下面用著名的鸢尾花数据来画一个矩阵图.从sklearn导入鸢尾花数据,然后将其转换成pandas的DataFrame类型,最后用seaborn画图.(seaborn包里也有这个数据,也可以直接从seaborn包导入此数据) 矩阵图: sns.pairplot(data,hue=...)   ---   hue为data里的数据,用其来显示不同颜色 由于data需要的格式为每列是变量(在这里是鸢尾花的四个特征),每行则是各变量的观测数据,因此…
画词云首先需要安装wordcloud(生成词云)和jieba(中文分词). 先来说说wordcloud的安装吧,真是一波三折.首先用pip install wordcloud出现错误,说需要安装Visual C++ 14.0.折腾半天安装好Visual C++后,还是不行,按网上指点,下载第三方包安装(https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud).安装是成功了,可是在anaconda里导入的时候又出现了问题,说是"no module…
mplot3d是matplotlib里用于绘制3D图形的一个模块.关于mplot3d 绘图模块的介绍请见:https://blog.csdn.net/dahunihao/article/details/77833877. 莫比乌斯环(mobius strip)是一种只有一个曲面的拓扑结构.把一个纸条扭转180°后,两头再粘接起来,这样的纸带只有一个面(即单侧曲面),一只小虫可以爬遍整个曲面而不必跨过它的边缘. 莫比乌斯环是一个二维的紧致流形 (即一个有边界的面),可以嵌入到三维或更高维的流形中…
直方图用于展示数据的分布情况,x轴是一个连续变量,y轴是该变量的频次. 下面利用Nathan Yau所著的<鲜活的数据:数据可视化指南>一书中的数据,学习画图. 数据地址:http://datasets.flowingdata.com/crimeRatesByState2005.csv 以下是这个数据文件的前5行: state murder forcible_rape robbery aggravated_assault \ 0 United States 5.6 31.7 140.7 291…
在机器学习中,经常要用scikit-learn里面的线性回归模型来对数据进行拟合,进而找到数据的规律,从而达到预测的目的.用图像展示数据及其拟合线可以非常直观地看出拟合线与数据的匹配程度,同时也可用于后续的解释和阐述工作. 这里利用Nathan Yau所著的<鲜活的数据:数据可视化指南>一书中的数据,学习画图. 数据地址:http://datasets.flowingdata.com/unemployment-rate-1948-2010.csv 准备工作:先导入matplotlib和pand…
箱线图通过数据的四分位数来展示数据的分布情况.例如:数据的中心位置,数据间的离散程度,是否有异常值等. 把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)分别为数据的第25%,50%和75%的数字. I-------------I o I-------------I o I-------------I o I-------------I Q1                Q2                 Q3 (lower quartile) …
Matplotlib有两种接口,一种是matlab风格接口,一种是面向对象接口.在这里,统一使用面向对象接口.因为面向对象接口可以适应更复杂的场景,在多图之间进行切换将变得非常容易. 首先导入matplotlib:from matplotlib import pyplot as plt.plt是最常用的接口. 一. 创建图像和坐标轴 fig=plt.figure()   ---   创建图像 ax=plt.axes()   ---   创建坐标轴 在matplotlib中,可以把figure看成…
很值得学习的java 画图板源码下载地址:http://download.csdn.net/source/2371150 package minidrawpad; import java.awt.*; import java.awt.event.*; import java.io.InputStreamReader; import java.io.Reader; import javax.swing.*; // 主界面类 public class DrawPad extends JFrame i…