matplotlib处理科学计算数据-L2
来源:互联网 发布:mac如何绕开百度云盘 编辑:程序博客网 时间:2024/06/13 11:31
目前博主本人所在行业为核反应堆工程领域,涉及大量科学计算程序的研制和数据分析处理,按照行业内部的说法,需要对科学计算进行前处理和后处理。这里以绘制一个六角形来开始我们的MATPLOTLIB之旅,六角形几何结构广泛存在于各类反应堆几何结构中,例如俄罗斯著名的VVER核电站,采用的就是六角形几何结构的核燃料。
import matplotlib.pyplot as pltimport matplotlib.patches as patches
fig1 = plt.figure()
ax1 = fig1.add_subplot(111, aspect='equal')
ax1.add_patch(
patches.RegularPolygon(
(0.5, 0.5), # (x,y)
6, # number of vertices
0.2, # radius
)
)
fig1.savefig('reg-polygon1d.png', dpi=90) 教程的所有示例Python代码都采用过程式结构进行书写,开发人员可以参考进行面向对象封装:
(1)红色部分为标准的Python模块引用,导入第三方函数库,这里一般的做法是采用plt这个名称导入matplotlib.pyplot模块,采用patches这个名称导入matplotlib.patches模块;
(2)蓝色部分为数据处理和绘图,这里一般的做法是使用NUMPY第三方模块来进行科学计算数据的存储和数值处理,利用MATPLOTLIB对这些数据进行可视化绘图;
(3)黑色部分为图片存储和属性设置,这里一般的做法是确定图片的格式,分辨率,设置二维或三维数据图形的坐标轴刻度和标签等内容。
下图是六角形图形绘制出来的图片展示。
从绘制的图形来看,其可视化过程由MATPLOTLIB的接口函数提供,而用户只需要提供绘制该六角形的中心点坐标(0.5, 0.5)和外接圆的半径0.2。更进一步贴近实际工程应用,本文提供的六角形图形绘制可以进行组合,由科学计算程序计算出反应堆堆芯各个六角形燃料组件的位置,那么将这些中心点坐标采用NUMPY模块进行数据存储和处理,再使用MATPLOTLIB进行可视化,便可以绘制完整的反应堆堆芯几何结构图,如下所示:
综上所述,利用MATPLOTLIB进行科学计算数据的可视化是一项创新性活动,如何直观简易地显示大量的科学计算数据是每个科研工作者的必修课程,俗话说一图胜过百字,本教程将尽可能对MATPLOTLIB中的关键点进行说明和记录,辅助开发人员平时的工程活动和研究工作。
本文介绍了利用MATPLOTLIB进行数据可视化的一个实例,通过该实例掌握该Python第三方函数库的基本用途和使用流程。后续的教程将分专题逐个介绍MATPLOTLIB中的接口函数和各类科学计算数据的处理。
2016.5.12晚
- matplotlib处理科学计算数据-L2
- matplotlib处理科学计算数据-L1
- matplotlib处理科学计算数据-L3
- Python科学计算数据可视化模块-Matplotlib
- python科学计算matplotlib
- python科学计算——数据可视化(Matplotlib)
- 《python科学计算》matplotlib学习
- Python做科学计算---matplotlib
- python做科学计算 numpy scipy matplotlib
- python科学计算学习二:matplotlib绘图(1)
- Matplotlib的安装------ 用于科学和计算的python模块
- python科学计算numpy,scipy,matplotlib的安装
- python科学计算之numpy+pandas+matplotlib+mysql
- 【Python】五、Matplotlib——《用Python做科学计算》
- Python数据科学Jupyter-Matplotlib-Numpy-Keras-Pandas速查
- python 科学计算学习一:numpy快速处理数据(1)
- python 科学计算学习一:numpy快速处理数据(2)
- python 科学计算学习一:numpy快速处理数据(3)
- python之cpu性能检测脚本
- 理解矩阵背后的现实意义
- APP开发实战13-接口文档的维护
- svn基本知识
- ios自定义控件——星星评分控件
- matplotlib处理科学计算数据-L2
- C++ Primer 学习笔记_98_非一般工具与技术 -优化内存分配
- HTML5 编辑 API 之 Range 对象(一)
- Hadoop 提取KPI 进行海量Web日志分析
- iOS报错:linker command failed with exit code 1 (use -v to see invocation)
- 变量命名规则
- EF for MySql中文乱码问题解决
- 分治法:循环赛日程安排问题
- Java进阶学习第十七天——JDBC入门学习