首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何按升序显示Y上的值,但保存其索引。Matplotlib

如何按升序显示Y上的值,但保存其索引。Matplotlib
EN

Stack Overflow用户
提问于 2020-11-22 13:36:43
回答 1查看 98关注 0票数 0

有两个x- is阵列按升序排列,y-混沌。如何以升序显示Y,而保存(x,y)

现在图形看起来是这样的

代码语言:javascript
运行
复制
import numpy as np
import matplotlib.pyplot as plt
x=[]
with open('D:\Programming\Contest\stepperf.txt','r') as a:
    for line in a:
        x.append(line.strip())
x =np.array(x)
y=[]
with open('D:\Programming\Contest\Hall.txt','r') as b:
    for line in b:
        y.append(line.strip())
y  = np.array(y)


fig, ax = plt.subplots(figsize=(8, 6))
plt.grid()     
plt.plot(x,y) 

plt.show()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-22 13:46:34

熊猫是将数组保持为表的一种很好的方法,并为您的问题提供了一个优雅的解决方案:

代码语言:javascript
运行
复制
import pandas as pd
df = pd.DataFrame({'x': x, 'y': y})

我们将您的xy存储到DataFrame,df中,其中有两列-- xy

访问数据的两个选项:

  1. df['x']df['y']是Pandas的系列对象。
  2. df['x'].valuesdf['y'].values又回到了numpy数组。

使用对其进行排序

代码语言:javascript
运行
复制
df_sorted_by_y = df.sort_values(by='y', ascending=True)

返回到numpy数组:

代码语言:javascript
运行
复制
x_sorted = df_sorted_by_y['x'].values
y_sorted = df_sorted_by_y['y'].values

编辑:在最后一段被阻塞的代码中,将df更改为df_sorted_by_y

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64954795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档