Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Numpy和Matplotlib绘制具有多个数据值的图形_Python_Numpy_Matplotlib - Fatal编程技术网

Python 使用Numpy和Matplotlib绘制具有多个数据值的图形

Python 使用Numpy和Matplotlib绘制具有多个数据值的图形,python,numpy,matplotlib,Python,Numpy,Matplotlib,我是一名本科化学专业的学生,我们在课程中学习python模块。我需要完成我的格式化作业,但我对如何绘制图形有点困惑,以下是我迄今为止的代码: import numpy as np import matplotlib.pyplot as plt import os os.chdir("C:\Users\Chloe\Desktop") data=np.loadtxt("tree_rings.txt") for column in data.T: plt.plot(data[:,0],colu

我是一名本科化学专业的学生,我们在课程中学习python模块。我需要完成我的格式化作业,但我对如何绘制图形有点困惑,以下是我迄今为止的代码:

import numpy as np
import matplotlib.pyplot as plt
import os
os.chdir("C:\Users\Chloe\Desktop")
data=np.loadtxt("tree_rings.txt")
for column in data.T:
    plt.plot(data[:,0],column)
plt.show()
这主要是从一些广泛的谷歌搜索和看我的讲师提出的powerpoints哈哈。 我遇到的问题是,如果有意义的话,图形显示x变量就像它是图形上的一条线一样。x轴是年份,y轴是树轮的大小,它在图上以直线的形式绘制年份,有没有办法阻止这一点在图上显示,但其他一切似乎都很好,提前感谢:) 编辑:


这就是图表的结果,我希望它没有顶部的蓝线。其余部分如所料。蓝色的线看起来像是代表年份,这是我的x轴。此外,还有3组数据需要绘制(因此我预计有3行),样本1、2和3中的环的大小与年份相对应。我对python也是非常陌生的,所以大多数情况下我只是处于解决问题的阶段。

蓝线来自读取“tree_rings.txt”数据时绘制的“年”数据

我想性能在这里不是一个大问题(不是处理海量数据),因此我将提出一个效率不高的解决方案:

import numpy as np
import matplotlib.pyplot as plt
import os
os.chdir("C:\Users\Chloe\Desktop")
data=np.loadtxt("tree_rings.txt")
skip_column = 0
counter = 0
for column in data.T:
    if counter == skip_column:
        continue
    counter += 1
    plt.plot(data[:,0],column)
plt.show()

如果没有使用此代码跳过“年”列,请尝试更改“跳过”列的值,并查看其是否有效

当您读取“tree\u rings.txt”数据时,蓝线来自绘制“年”数据

我想性能在这里不是一个大问题(不是处理海量数据),因此我将提出一个效率不高的解决方案:

import numpy as np
import matplotlib.pyplot as plt
import os
os.chdir("C:\Users\Chloe\Desktop")
data=np.loadtxt("tree_rings.txt")
skip_column = 0
counter = 0
for column in data.T:
    if counter == skip_column:
        continue
    counter += 1
    plt.plot(data[:,0],column)
plt.show()

如果没有使用此代码跳过“年”列,请尝试更改“跳过”列的值,并查看其是否有效

是否确实需要使用
来执行
循环?我认为您应该尝试从文本文件中提取一次X和Y数组,然后
plt.plot(X,Y)
。您能否编辑您的问题,以包括您尝试过的内容、结果以及您期望的内容(您在第二段中描述了什么)?包含运行示例所需的所有代码也会很有帮助(例如,它看起来像是导入了
matplotlib.pyplot
as
plt
)。如果你的问题是完整的,那么给出答案就更有效了。使用data.T[1::::中的
列开始从第二列开始绘制;第一列是年的x轴,所以蓝线是x轴与它自己的对比。你确定那里需要一个
循环吗?我认为您应该尝试从文本文件中提取一次X和Y数组,然后
plt.plot(X,Y)
。您能否编辑您的问题,以包括您尝试过的内容、结果以及您期望的内容(您在第二段中描述了什么)?包含运行示例所需的所有代码也会很有帮助(例如,它看起来像是导入了
matplotlib.pyplot
as
plt
)。如果你的问题是完整的,那么给出答案就更有效了。使用data.T[1::::
中的
列开始从第二列开始绘制;第一列是年的x轴,所以蓝线是x轴与它自身的对比