如何用python读取txt文件中的科学计数表示的数据并绘图?

import matplotlib.pylab as pylab

def loaddata(filename):
infile = open(filename, 'r')

#定义两个list,用于存放数据
x = []
y = []

for line in infile:
    trainingset = line.split()#对于每一行按照空格分开,将数据分为两部分。若用‘,’分隔,则写为line.split(',')
    x.append(trainingset[0])#第一部分,即文件中的第一列数据逐一添加到list x中
    y.append(trainingset[1])#第二部分,即文件中的第二列数据逐一添加到list y中

return(x, y) #x,y组成一个元组,通过函数一次性返回

def plotdata(x, y):
length = len(y)
pylab.figure(1)

pylab.plot(x, y, 'rx')

pylab.xlabel('time')
pylab.ylabel('amplitude')

pylab.show()#让绘制的图形在屏幕上显示

(x, y) = loaddata('test.txt')

plotdata(x, y)

用这个程序读取文件后绘图结果科学计数表示的数字无法自动分辨大小
图片说明

0

1个回答

研中经常需要作图和科学运算。如果有一个txt的数据文件,该如何导入Python中呢?比方说下面这种类型的数据文件:
wavelength,intenisty
400,325.2
401,356.9
402,369.8
...
这是一种以“,”分割的两列数据,另外还会经常遇到以Tab分割的数据,“ ”也就是“\t”;还可能会遇到多列数据的情况

-1
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
用python读取txt文件中的数据并画各类图形展示
捣腾了一下午,终于整出来了,帮助和我一样的菜鸟解决数据读取问题,这是所有做实验的第一步,如果这步都没有解决,下面部分如何展开,这里每一步都很详细的解释了如何操作,我的文件内容,读取数据和画图都在本文末尾都有展示import pandas as pdimport matplotlib.pyplot as pltimport numpy as np#定义读取文件函数def read_data(file...
根据txt文件中记录的数据进行绘图
# include <stdio.h> # include<string.h> # include<stdlib.h> # include<opencv2/opencv.hpp> # include<sstream> # include<iostream> using namespace std; using namespa...
python读取txt文件并画图
1,使用python读取txt文件已知txt文件内容如下: 0 0 1 1 2 4 3 9 4 16 5 25 6 36请以第一列为x轴,第二列为y轴画图 步骤如下: 1)使用readlines读取文件 2)建立两个空列表X,Y,将第一列的数字放入X,第二列的数字放入Y中 3)以X,Y为轴画图 实现如下:im
用matlab读取txt文件并作图
用matlab读取txt文件并作图,txt为光谱仪测量的反射率数据,附上代码和反射率数据。
matlab读取txt文件里面的内容并绘图
date=load('1111.txt') x=date(:,1); y=date(:,2); z=date(:,3); m=sqrt(y.*y+z.*z) plot(x,m) ,xlabel('距离');ylabel('偏移量'); axis([0 80 0 30]); hold on txt文本中含有3列数据,x为位移,y、z分别为2维坐标下的偏移量,求总偏移量。
用matlab读取txt文件然后画图
用matlab读取txt文件然后画图,只需改变文件路径就可用
python读取txt文件中的数据
读取txt文件中的某一列: [int(l.split()[0]) for l in open(“a.txt”)] 但是读不了最后一列,出现:IndexError: list index out of range的问题。参考:http://www.cnblogs.com/xuxn/archive/2011/07/27/read-a-file-with-python.html 讲的很详细,对于这样
python导入txt文件并绘制成条形图
今天需要把从navicat导出的数据画成条形图,第0列为横坐标,第一列为纵坐标,导成txt格式后发现数据的格式是"1" "163664"这样的,需要把双引号去掉放在数组中,用了split('"')分割符,"1" "163664"分割后为 ['', '1', '\t', '163664', '\n'],所以取第一列并转化为int型,先用open()打开文件,再遍历文件取需要的数据,代码如下:
解决:将.mat文件保存到.txt不带有科学计数法e-0
Python 2.7 IDE Pycharm 5.0.3 Matlab 2014a遇到问题在进行数据处理的时候,比如说我正好遇到KNN算法的python描述,但我的数据集是matlab的.mat文件,我想要用python处理数据的话,mat是不可行的,那怎么办呢?解决思路python能读入的是txt,现在数据很多也是存在txt中的(以我接触的一些数据来说),python读取txt是非常方便的,而
怎么将一个很大的数写进一个文件时不用科学计数法?
数据原始的格式是numpy,我现在需要将这些数据写进txt文件。原始数据其中一行的格式如下:我最初直接用str()方法,但是其中一个数据就变成了这样:“2.82769379e+08”,这可能会影响以后的数据读取。所以问题来了,如何不以科学计数法显示并转为字符串变量?最开始试了各种办法,以为其中一个办法会有用:python 不以科学计数法输出即:import numpy as np np.set_p...
1024. 科学计数法 (20) python篇
1024. 科学计数法 (20)时间限制 100 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 作者 HOU, Qiming科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分的正负号即使对正数也必定明确给出。现以...
python大整数被表示成科学计数法
需求:从库里可以得到一个24个字符组成的字符串, 如“////////////////////////”,“//////////////////////23”,“234567888888888888888888”,但是如果是全数字会变成科学计数法表示,需要转成字符串用来做后续处理。 处理方法: str_24 = str('{:.0f}'.format(item.get("二十四月内各月还款状况...
python——读取txt文本数据并可视化
最近用于对比结果,使用到了python的基本操作,之前也有了解但是与M相比难免有些区别 txt文本数据如下 0.9453125 0.9640625 0.671875 0.55625 0.475 0.921875 0.965625 0.7828125 0.5046875 0.6421875 0.9390625 0.946875 0.9328125 0.496875 0.5390625 0.964...
c++中txt文件的读取以及在MFC中读取txt坐标数据并完成图形绘制
主要介绍如何读取txt文件中的坐标数据,并在MFC窗口中绘制出来,工程创建方法和绘图方法与上一篇博文基本一致,这里就不再详赘述,可参考上一篇博文vs2010、MFC窗口中绘制点、线、面。 C++中读取文件的方法有两种,一种是来自于C语言的“文件指针”方法,另一种是C++中的“文件流”思想。 1、文件指针 FILE * fopen(const char * path,const char * ...
matplotlib绘图,设置坐标格式,比如科学计数法、公式表示等
matplotlib绘图,设置坐标格式,比如科学计数法、公式表示等前言导入必要包未设置坐标格式科学计数表示 前言 绘制实验结果时,很多时候默认设置得到的图形,并不能满足我们的需求。如果我们希望绘制出来的图形更加骚一点,更好看一点,我们怎么做呢。接下来我将介绍绘图时设置横纵坐标的表示方式,包括使用科学计数法和用公式表示方法的。 科学计数表示的纵坐标 导入必要包 导入必要的包,其中FuncFor...
Python读取txt某几列绘图
晚上帮同学用Python脚本绘图,大概需求是读取一个txt文件的两列分别作为x和y的值,绘图即可,代码如下: #coding:utf-8 import numpy as np import matplotlib.pyplot as plt import pylab ## 绘制该文件中的数据 ## 需要引入pylab库,里面用到的函数和MATLAB里的非常类似 def plotData(x
python Matplotlib 系列教程(七)——从文件加载数据并绘制
本章节我们将要学习如何读取一个文件的内容,并根据文件的内容进行绘制。比如从csv文件读取数据,从txt文件读取数据等。 # -*- coding: utf-8 -*- import matplotlib.pyplot as plt import csv from matplotlib.font_manager import FontProperties font = FontProperti...
python输出的数据不以科学计数法输出(取消输出科学记数法)
import numpy as np np.set_printoptions(suppress=True)
以科学计数法打印浮点数
如下,从文件中读取两个浮点数,并按照科学计数法打印出其和#include <stdio.h> #include <stdlib.h>int main() { FILE *fp; double d1, d2; fp = fopen("string.in", "r"); if (fp == NULL) { printf("can not open file!
python3 将科学计数法(用E表示的)转化为书写形式的科学计数法的数字
import re def fun(numstr: str): &quot;&quot;&quot;需要输入为字符串&quot;&quot;&quot; num = numstr.upper() if 'E' not in num: return numstr lower = {'0': '⁰', '1': '¹', '2': '²', '3': '³', '4': '⁴', '5': '⁵', ...
python不以科学计数法显示数据
python不以科学计数法显示数据 今天在学机器学习的东西,但是运行结果一直都是科学计数法,让我理解起来有点难。 网上搜集了一些资料发现只要一行代码即可解决这个问题。 np.set_printoptions(suppress=True) 其中np就是numpy。...
R语言数值取消科学计数法表示
>#取消科学计数法 >options(scipen = 200) >#scipen 表示在200个数字以内都不使用科学计数法
poi读取excel防止数值变成科学计数
/** * &amp;lt;p&amp;gt; * Description:判断时间类型 * &amp;lt;/p&amp;gt; * * @param sheet sheet * @param i 行 * @param colIndex 列 * @return val 返回的string */ public static Str...
关于用二进制科学计数法表示float型数据的笔记
//从本人空间日志搬运而来 //2017-10-25 22:01   首先先说一下今天的重难点吧         老师讲的那个东西,我这里就把它形容为用二进制科学计数法表示float浮点数据         相信大家对10进制的科学计数法都很了解,而老师给出的式子是2x×1.y,这里我们只要换一下位置,换成1.y×2x。是不是熟悉多了?10进制里1.y是属于1到10的,二进制自然是一到二...
数据处理——pandas替换科学计数法数字
用pandas读取数据时发现工单编号、电话号码等变成科学计数法记录。通过观察当电话号码类型是float时采用科学计数法,而int不会。将电话号码转化成int类型(在Excel里电话号码转化成字符串类型也没有解决问题) 1、首先要将空值转化成数值,这里我转化成了-1(这里我把data2所有字段都填了-1) data2 = data2.fillna(-1) 2、将电话号码字段转化成int类型
matlab读三维txt数据并绘图
首先文件内容如下: [[ 0.57694962 -0.0513004  -0.05568175]] [[-1.02648869  0.23319389 -0.21263301]] [[-0.42390916  0.86218512  0.03639062]] [[ 0.57694962 -0.0513004  -0.05568175]] [[-0.10890177  0.2511082
python matplotlib从文件中读取数据绘制散点图
示例说明:从一个文件读取数据,绘制成散点图 #coding:utf-8 import matplotlib.pyplot as plt import numpy as np import matplotlib as mpl mpl.rcParams['font.family'] = 'sans-serif' mpl.rcParams['font.sans-serif'] = 'NSimSun,T
让csv不用科学计数法表示
让csv不用科学计数法表示: 1)csv文档右键打开方式选择写字板 2)在写字板中全选后选择复制 3)新建一个excel文档,粘贴复制的内容 4)选择“数据”菜单中的“分列”,分列方式选择“分隔符号”,点击“下一步”;在“分隔符号”中选择“逗号”,点击“下一步”;将每一列的“列数据格式设置为”文本“后点击”完成“...
MATLAB用dlmrite函数将数据写入到.txt文件,不用科学计数法
dlmwrite(filename,file,‘delimiter’,’,’,‘newline’,‘pc’,‘precision’,’%.0f’); 注意!设置精度就不会将科学计数法的数据写入到txt文件中去。你可以设置%.0f,此时是没有小数部分的,但是!会按照原数据显示。 ...
将科学计数法数据转化成普通数据
public class TestBigDecimal{     public static void main(args[]){         String str = &quot;{\&quot;houseprice\&quot;:\&quot;3.252528E9\&quot;,\&quot;age\&quot;:\&quot;12\&quot;}&quot;;         JSONObject obj = JSONObject.parseObject(str);      ...
Python读取txt文件,并画三维图
记忆力差的孩子得勤做笔记!刚接触python,最近又需要画一个三维图,然后就找了一大堆资料,看的人头昏脑胀的,今天终于解决了!好了,废话不多说,直接上代码! #coding:utf-8 import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d.axes3d import Axes3D x = []
C#中实现文本读取数据并画出数据折线图
1、题目    从文本文件中读取数据,数据格式为:空格分隔;每一行为一组数据,依次读取出来,之后将数据存于数组中;继而将其显示至图形中2、完整代码using System;using System.Collections;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Syst...
python 使程序输出不是科学计数法的形式,而是浮点型的数据
python 使程序输出不是科学计数法的形式,而是浮点型的数据输出。在程序的开头加上两句话:import numpy as npnp.set_printoptions(suppress=True)
pandas读取,写入txt文件,统计某列元素的重复次数
1.用pandas读取txt数据文件,每行数据之间是用空格分开的。 原数据如下: 代码如下: from pandas import DataFrame import pandas as pd da = pd.read_table('a.txt',header = None,delim_whitespace=True) print(da)   结果如下:     注意: ...
python读取数据并画图
python 读取数据 作图,读取txt文件,plot画图,调用matplotlib
C#读取txt文件并画图
tools.cs using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using ZedGraph; namespace HistoryLine { class tools ...
matlab导入txt数据画图
因为最近需要观察txt保存的一堆数据,则需要使用这些数据画图。 强大的matlab分分钟解决了。 实例 数据:data.txt 步骤:     ①打开matlab -&amp;gt; HOME(主页) -&amp;gt; Import Data(导入数据) ②选择data.txt文件 ③选择Numeric Matrix(数值矩阵) -&amp;gt; Import Selection -&amp;gt; Gener...
python实现从文件中读取数据并绘制成 x y 轴图形
import matplotlib.pyplot as plt import numpy as np def readfile(filename):     dataList = []     dataNum = 0     with open(filename,'r') as f:           for line in f.readlines():          
python调整坐标轴标签值的位数(例:科学记数法)
ax = plt.gca() # 获取当前图像的坐标轴信息 ax.xaxis.get_major_formatter().set_powerlimits((0,1)) # 将坐标轴的base number设置为一位。 ax.yaxis.get_major_formatter().set_powerlimits((0,1)) # 将坐标轴的base number设置为一位。 效果图: ...
解决python中 ndarray 默认用科学计数法显示的问题
机器环境:Python 3.6.4numpy==1.14.0pandas==0.22.0解决方法:  np.set_printoptions(suppress=True)默认情况下,ndarray数组采用科学计数法显示:加入代码后: