【python】pandas & matplotlib 数据处理 绘制曲面图
Python matplotlib模块,是扩展的MATLAB的一个绘图工具库,它可以绘制各种图形
建议安装 Anaconda后使用 ,集成了很多第三库,基本满足大家的需求,下载地址,对应选择python 2.7 或是 3.5 的就可以了:
https://www.continuum.io/downloads#windows
脚本默认执行方式: 1.获取当前文件夹下的1.log文件 2.将数据格式化为矩阵 3.以矩阵的列索引为x坐标,行索引为y坐标,值为z坐标 4.绘制曲面图 |
测试所用数据: r_gain= r_gain= r_gain= r_gain= r_gain=107.000000f, r_gain=111.000000f, r_gain=109.000000f, r_gain=111.000000f, r_gain=101.000000f, r_gain= r_gain= r_gain= r_gain= |
# -*- coding: utf-8 -*- from matplotlib import pyplot as plt from mpl_toolkits.mplot3d import Axes3D from pandas import DataFrame def draw(x, y, z): ''' 采用matplolib绘制曲面图 :param x: x轴坐标数组 :param y: y轴坐标数组 :param z: z轴坐标数组 :return: ''' X = x Y = y Z = z fig = plt.figure() ax = fig.add_subplot( 111 , projection = '3d' ) ax.plot_trisurf(X, Y, Z) plt.show() if __name__ = = '__main__' : ''' 默认执行方式: 1.获取当前文件夹下的1.log文件 2.将数据格式化为矩阵 3.以矩阵的列索引为x坐标,行索引为y坐标,值为z坐标 4.绘制曲面图 ''' data = {} index_origin = 0 f = open ( "1.log" ) line = f.readline() while line: data[index_origin] = line.split( '=' )[ - 1 ].replace( ' ' , ' ').split(' f,')[ 0 : - 1 ] index_origin = index_origin + 1 line = f.readline() f.close() df = DataFrame(data) df = df.T x = [] for i in range ( len (df.index)): x = x + list (df.columns) print (x) y = [] for i in range ( len (df.index)): for m in range ( 17 ): y.append(i) print (y) z = [] for i in range ( len (df.index)): z = z + df[i:i + 1 ].values.tolist()[ 0 ] z = map ( float , z) print (z) draw(x, y, z) |
【python】pandas & matplotlib 数据处理 绘制曲面图的更多相关文章
- python的matplotlib.pyplot绘制甘特图
博主本来就想简单地找一下代码,画一幅甘特图,结果百度之后发现甘特图的代码基本都不是用matplotlib库,但是像柱状图等统计图通常都是用这个库进行绘制的,所以博主就花了一些时间,自己敲了一份代码,简 ...
- python中matplotlib所绘制的图包含了很多的对象
上图中的top=‘off’意思是说顶部的grid lines 看不见. 去除frame,意思就是将这个矩形给去除掉,spine意思是脊柱 bars = plt.bar(pos, popularity, ...
- Python使用matplotlib模块绘制多条折线图、散点图
用matplotlib模块 #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 功能:折线图.散点图测试 ''' import rando ...
- python 运用numpy库与matplotlib库绘制数据图
代码一 import numpy as np import matplotlib.pyplot as plt x=np.linspace(0,6,100) y=np.cos(2*np.pi*x)*np ...
- Python数据分析-Matplotlib图标绘制
Matplotlib介绍 Matplotlib是一个强大的Python绘图和数据可视化的工具包. Matplotlib的主要功能 Matplotlib是python中的一个包,主要用于绘制2D图形(当 ...
- python使用matplotlib:subplot绘制多个子图
1 问题描述 matploglib 能够绘制出精美的图表, 有些时候, 我们希望把一组图放在一起进行比较, 有没有什么好的方法呢? matplotlib 中提供的 subplot 可以很好的解决这个问 ...
- Python Pandas 时间序列双轴折线图
时间序列pv-gmv双轴折线图 import numpy as np import pandas as pd import matplotlib.pyplot as plt n = 12 date_s ...
- 使用matplotlib库绘制函数图
函数如下: z = x^2 * y / (x^4 +y^2) 代码如下: import numpy as np import matplotlib.pyplot as plt import mpl_t ...
- Python——Pandas 时间序列数据处理
介绍 Pandas 是非常著名的开源数据处理库,我们可以通过它完成对数据集进行快速读取.转换.过滤.分析等一系列操作.同样,Pandas 已经被证明为是非常强大的用于处理时间序列数据的工具.本节将介绍 ...
随机推荐
- Android TelephonyManager电话管理器
今天介绍一下Android的电话管理器--TelephonyManager,TelephonyManager管理手机通话状态.电话网络信息的服务类,获取TelephonyManager: Teleph ...
- 在CentOS6.8上面安装Python3.5
以前每次装Linux,升级Python,都会一堆问题,然后Google,本来想着记录一下,结果问题太多了,也就记不住了,这次特地记了下来. 在CentOS6.8上面安装Python3.5我的系统是Ce ...
- ASP.NET简单实现APP中用户个人头像上传和裁剪
最近有个微信项目的用户个人中心模块中,客户要求用户头像不仅仅只是上传图片,还需要能对图片进行裁剪.考虑到flash在IOS和Android上的兼容性问题,于是想着能从js这块入手,在网上发现了devo ...
- 【转】RadControls for Silverlight(学习2-RadDataPager)
引用地址:http://www.cnblogs.com/forrestsun/archive/2011/05/15/2046894.html <Grid x:Name="LayoutR ...
- 如何处理C#的HttpWebResponse的GetResponse中的超时异常
程序中,有时会遇到超时的异常,需要进行处理,用一般的try...catch(Exception ex)...会发现ex没有status属性,此时使用WebException捕获异常: try { re ...
- IOS 设置导航栏
//设置导航栏的标题 self.navigationItem setTitle:@"我的标题"; //设置导航条标题属性:字体大小/字体颜色…… /*设置头的属性:setTitle ...
- java通用的方法整理
判断字符串是否为空 public static boolean IsEmpty(String str){ if (str == null){ return true; } if ("&quo ...
- Spring @Scheduled应用解析
最近,遇到的一个需求,需要执行定时任务,每个一定时间需要执行某个方法 因为项目是SpringMVC的项目,所以使用的是Spring @Scheduled(由于quartz应用起来太麻烦,所以没有采用) ...
- HighChart报表之饼图
个人认为HighChart做报表还是很不错的,从报表的样式还是性能都是很不错的选择. 1.新建一个html页面,命名为:ReportTest.html <script type="te ...
- OpenSSL 使用拾遗(一)---- 生成 pkcs12 文件
从本期开始,记录一些在使用 OpenSSL 过程中碰到的问题及解决办法 在 Linux 下需要生成 pkcs12 文件,立即想到 OpenSSL.键入如下命令 ~ # openssl pkcs12 - ...