1. 数据分析
  2. matlab
  3. Numpy + scipy + pandas +matplotlib
  4. 数据计算 +科学应用+数据清洗+数据可视化
  5. 1 Numpy概述
  6. 1 基于c语言的python接口的数值算法库
  7. 2 开源免费
  8. 3 弥补了python语言在数值计算方面的短板
  9. 4 作为常用科学计算工具的底层支撑
  10. 2 Numpy的性能
  11. 1 简化代码编写,提高开发效率
  12. 2 通过优化底层实现,提高运行速度
  13. 基础:
  14. 1 数组
  15. 2 Numpy中的数组是ndarray类实例化的对象:
  16. 实例数据:数组的内容
  17. 元数据:对数组的描述
  18. 大部分对数组的操作仅仅是对元数据的操作,以此提高执行性能
  19. 3 Numpy中的数组必须是同质的,即所有元素的数据类型必须完全相同
  20. 4 dtypeshape属性分别表示元素类型和维度
  21. 5 实例化
  22. np.arange(起始值,终止值,步长)
  23. 默认起始值0
  24. 默认步长:1
  25. np.array(任何可被解释为数组的序列)
  26. 6 类型转换astype(目标类型)->转换后的新数组
  27. 7 '<U21' 表示字符串,其中每个字符都是小端字节序的21Unicode字符
  28. 3 多维数组和元素索引
  29. 数组的维度表示为一个元组:(高维度数->低维度数)
  30. 一维数组,6个元素:(6,)
  31. 二维数组,23列:(23
  32. 三维数组,234列:(234
  33. 1 通过下标运算符访问数组中的元素
  34. 2 数组[页标][行标][列标]
  35. 3 数据类型
  36. 存储形式,处理方式
  37. 1 内置类型
  38. 布尔型
  39. bool_ : True/False
  40. 整型
  41. 有符号 int8/int16/int32/int64
  42. 无符号 : uint8/uint16/uint32/uin64
  43. 浮点型: float16/float32/float64
  44. 复数型 complex64/complex128
  45. 2 复合类型
  46. 有多个相同或不同类型的字段组合而成的类型
  47. np.array(..,dytpe=复合类型)
  48. 3 类型字符码
  49. bool_:?
  50. 有符号整型:i1/2/4/8
  51. 无符号整型:u1/2/4/8
  52. 浮点型: f2/4/8
  53. 复数型:c8/16
  54. 字符串:U<字符数>
  55. 日期时间:M
  56. 字节序(针对多字节整型):</>/=表示小端/大端/硬件
  57. 4 切片
  58. 数组[起始:终止:步长]
  59. 默认起始:首(正步长)/尾(负步长)
  60. 默认终止:尾后(正步长)/首前
  61. 默认步长:1
  62. 5 变维
  63. 1 视图变维:元数据独立,实际数据共享
  64. 1 数组.reshape(新维度) ->新数组
  65. 元素数和维度数必须匹配
  66. 2 数组.ravel() -> 得到的是一维数组
  67. 3 复制变维:元数据和实际数据都是独立的
  68. 数组.flatten() -->一维数组 (数组运算不会改变)
  69. 4 就地变维:修改元数据的值(维度信息,不会产生新的数组对象)
  70. 数组.shape = 新维度
  71. 数组.resize(新维度)
  72. 6 组合拆分
  73. 1 垂直组合:沿着垂直方向组合两个小的同维数组为一个大数组
  74. np.vstack((上,下))
  75.  
  76. np.concatenate((上,下),axis=0)
  77. axis : 轴向,用维度的下标表示 0为行,,1为列
  78. 2 水平组合:沿着水平方向组合两个小的同维数组为一个大数组
  79. np.hstack((左,右))
  80. np.concatenate((左,右),axis=1)
  81. 3 深度组合:沿着纵深方向组合两个小的同维数组为一个大数组
  82. np.dstack((前,后)) 会升维
  83. 4 行组合:以两个一维数组按照行的方式组合成一个二维数组
  84. np.row_stack((上,下))
  85. 5 列组合:以两个一维数组按照列的方式组合成一个二维数组
  86. np.column_stack((左,右))
  87. 6 垂直拆分:将一个大的数组沿着垂直方向拆分成若干个小的同维数组
  88. np.vsplit(被拆分数组,拆分份数)
  89. np.split(被折分数组,拆分份数,axis=0)
  90. 7 水平拆分:将一个大的数组沿着水平方向拆分成若干个小的同维数组
  91. np.hsplit(被折分数组,拆分份数)
  92. np.split(被折分数组,拆分份数,axis=1)
  93. 8 深度拆分:将一个大的数组沿着纵深方向拆分成若干个小的同维数组
  94. np.dsplit(被拆分数组,拆分份数)
  95. 7 ndarray的属性
  96. dtype -元素的数据类型
  97. shape - 数组的维度
  98. ndim - 数组的维数,len(shape)
  99. size - 数组的元素数,shape中元素相乘
  100. itemsize - 元素字节数,与dtype相关
  101. nbytes - 总字节数,size x itemsize
  102. T - 转置视图
  103. real - 复数数组的实部视图
  104. imag - 复数数组的虚部视图
  105. flat - 扁平迭代器
  106. 8 ndarray <==>list
  107. np.array(列表)
  108.  
  109. 二:数据可视化(Matplotlib)
  110. 1 基本绘图
  111. plot(水平坐标,垂直坐标)
  112. 2 线型,线宽和颜色
  113. plot(...,linestyle=线型,linewidth=线宽,color=颜色,...)
  114. 线形:[-]/--/:./o/o-/...
  115. 线宽:0-oo
  116. color:dodgerblue/orangeered/limegreen/red/blue/...
  117. 3 设置坐标范围
  118. xlim(水平坐标最小值,水平坐标最大值)
  119. ylim(水平坐标最大值,水平坐标最大值)
  120. 坐标范围越大,图形越小,反而反之。
  121. 4 设置坐标刻度
  122. xticks([水平轴刻度位置])
  123. yticks([垂直轴刻度位置])
  124. 表示数学的字符pi( [r'$-\pi$'] )
  125. 表示数学2分之pi ( r'$-\frac{\pi}{2}$' )
  126. 5 设置坐标轴属性
  127. ax = gca() # 获取当前坐标轴图
  128. ax.spines['left'] - 左纵轴
  129. ax.spines['left'].set_position(('data', 0))
  130. ax.spines['right'] - 右纵轴
  131. ax.spines['top'] - 上横轴
  132. ax.spines['bottom'] - 下横轴
  133. XX轴.set_position((坐标系,坐标值)) #设置位置
  134.  
  135. XX轴.set_color(颜色) #设置颜色
  136. ax.spines['top'].set_color('none')
  137. 6 图例
  138. plot(...,label=图例标签,...)
  139. legend([loc=显示位置])
  140. 7 添加特点
  141. scatter(水平坐标,垂直坐标,s=大小,marker=点型,
  142. edgecolor=边缘色,facecolor=填充色,zorder=Z顺序)
  143. 8 备注
  144. annotate(
  145. 备注文本,
  146. xy =目标坐标,
  147. xycoords =目标坐标系,
  148. xytext=文本坐标,
  149. textcoords=文本坐标系,
  150. fontsize=字体大小,
  151. arrowprops=箭头属性)
  152. 9 图形(窗口)对象
  153. figure(窗口名(标题栏文本),figsize=大小,dip=分辨率,facecolor=颜色)
  154. 如果与指定窗口名对应的图形对象不存在,那么就新建一个图形窗口,如果已存在,那么不会再新建图形窗口,而是将已存在的那个图形窗口设置为当前窗口
  155. title(窗口标题,fontsize=字体大小)
  156. xlabel(垂直轴标签,fontsize=字体大小)
  157. tick_params(labelsize=刻度标签字体大小)
  158. grid(linestyle=网格线型)
  159. 10 子坐标图
  160. 1 矩阵布局
  161. subplot(行数,列数,图号)
  162. tight_layout() #紧凑布局
  163. 2 删格布局
  164. 删格定位器 = mp.GridSpec(行数,列数)
  165. subplot(删格定位器[行,列]
  166.  
  167. 3 自由布局
  168. axes([左,底,宽,高]) # 归一化单位
  169. 11 刻度定位器
  170. xxxLocator(定位规则)
  171. ax = gca()
  172. ax.xaxis 水平坐标
  173. ax.yaxis 垂直坐标
  174. 坐标轴.set_major_locator(刻度定位器) #主刻度
  175. 坐标轴.set_minor_locator(刻度定位器) #次刻度
  176. mp.axis('off') #关闭坐标轴
  177. 12 区域填充
  178. fill_between(水平坐标,起点垂直坐标,终点垂直坐标,color=颜色,alpha=透明度 )
  179. 13 条形图
  180. bar(水平坐标,绝对高度,相对宽高,color=颜色,label=图例标签,alpha=透明度)
  181. 14 饼图
  182. pie(值数组,间隙数组,标签数组,颜色数组,shadow =是否带阴影,startangle=起始角度)
  183. 15 等高线图
  184. contour(点阵X坐标矩阵,点阵Y坐标矩阵,点阵Z坐标矩阵,梯度数,colors=颜色,linewidths=线宽)
  185. 16 热力图
  186.  
  187. 17 网格线
  188. ax = gca()
  189. ax.grid(which="major/minor",axis='x/y/both')
  190. 18 半对数坐标
  191. semi(同plot)
  192. 19 极坐标
  193. gca(projection='polar') #创建极坐标图
  194. plot/scatter(极角,极径)
  195. 20 三维坐标系
  196. from mp;_toolkits.mplot3d import axes3d
  197. 1 三维散点
  198. ax.scatter(x坐标,Y坐标,Z坐标,s= 大小,marker=点形
  199. edgecolor=边缘色,fancecolor=填充色,
  200. zorder=Z顺序)
  201. 2 空间曲面
  202. ax.plot_surface(点阵X坐标,点阵Y坐标矩阵,点阵Z坐标矩阵,rstride=行跨距,
  203. cstride=列跨距,cmap=颜色映射)
  204. ax.plot_wireframe(点阵X坐标矩阵,点阵Y坐标矩阵,点阵Z坐标矩阵,
  205. rstride=行跨距,cstride=列跨距,linewidth=线宽,color=颜色)

matplotlib基本函数的更多相关文章

  1. python可视化_matplotlib

    对于Python数据可视化库,matplotlib 已经成为事实上的数据可视化方面最主要的库,此外还有很多其他库,例如vispy,bokeh, seaborn,pyga,folium 和 networ ...

  2. 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇

    始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...

  3. numpy和Matplotlib篇---2

    原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/ 5.3 Python的科学计算包 - Numpy numpy(Numerical Python ...

  4. 『科学计算』科学绘图库matplotlib学习之绘制动画

    基础 1.matplotlib绘图函数接收两个等长list,第一个作为集合x坐标,第二个作为集合y坐标 2.基本函数: animation.FuncAnimation(fig, update_poin ...

  5. Python 的 Matplotlib 画图库

    Matplotlib安装 NumPy库方便数值运算,但枯燥的数据并不利于人们的直观理解. 数据需要可视化. Matplotlib:一个数据可视化函数库 使用前需要安装  利用Python自带 ...

  6. python数据分析工具 | matplotlib

    不论是数据挖掘还是数学建模,都免不了数据可视化的问题.对于 Python 来说,matplotlib 是最著名的绘图库,它主要用于二维绘图,当然也可以进行简单的三维绘图.它不但提供了一整套和 Matl ...

  7. python数据分析之numpy、matplotlib的使用

    5.3 Python的科学计算包 - Numpy numpy(Numerical Python extensions)是一个第三方的Python包,用于科学计算.这个库的前身是1995年就开始开发的一 ...

  8. python安装numpy、scipy和matplotlib等whl包的方法

    最近装了python和PyCharm开发环境,但是在安装numpy和matplotlib等包时出现了问题,现总结一下在windows平台下的安装方法. 由于现在找不到了工具包新版本的exe文件,所以采 ...

  9. matplotlib 高级用法实例--共享x轴

    http://localhost:8888/notebooks/duanqs/matplotlib_advanced_example.ipynb 我不会弄呀, 刚才从matplotlib文档里吧示例用 ...

随机推荐

  1. kubeadm 安装kubernetes1.6.2

    准备工作 安装依赖 yum install -y wget vim net-tools epel-release 修改内核参数 cat <<EOF > /etc/sysctl.d/k ...

  2. mysql使用truncate截断带有外键的表时报错--解决方案

    报错内容如:1701 - Cannot truncate a table referenced in a foreign key constraint 一.为什么要使用truncate 使用trunc ...

  3. Saltstack把网卡从ens160修改成eth0

    手动修改参考:https://www.cnblogs.com/minseo/p/8521873.html salt目录结构为 files/grub GRUB_TIMEOUT=5 GRUB_DISTRI ...

  4. django:bootstrap table加载django返回的数据

    bootstrap table加载表格数据有两类方式: 一种通过data属性的方式配置,一种是javascipt方式配置 这里看js配置方式: 1.当数据源为.json文件时 url参数写上json文 ...

  5. Moq中判断方法是否被执行时,参数中有列表的情况

    如果参数中有列表,列表项为引用类型时,则会判断列表项是否为同一引用 列表本身不判断

  6. 欧姆龙_NX1P_PLC功能模块_限定安全作业空间

    程序  和说明 以及流程图 已上传到百度云盘 https://pan.baidu.com/s/1kYF11pQHJ4VxyaXr8E_gAA 主要是用来向量的叉乘  判断俩向量正向夹角

  7. 最新 创梦天地java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.创梦天地等10家互联网公司的校招Offer,因为某些自身原因最终选择了创梦天地.6.7月主要是做系统复习.项目复盘.Leet ...

  8. CentOS系统下Tomcat的优化

    一.JVM内存优化(线程优化) vim ./bin/catalina.sh 在catalina.sh文件中添加以下配置: JAVA_OPTS="-server -Xms128m -Xmx12 ...

  9. jqGrid获取选中行id集合

    $("#jqGrid").jqGrid("getGridParam","selarrrow");

  10. Java Socket 的工作机制

    转载,请加上原文链接: 目录 socket 对象的创建时间 socket 通信可能会造成死锁 socket 对象的创建时间 这里需要一点TCP的知识, TCP状态分析请看 --> TCP转态转换 ...