【发布时间】:2017-05-04 16:24:15
【问题描述】:
我正在尝试使用 python 从 Excel 工作表中的数据创建图表。数据是这样的
Location Values
Trial 1 Edge 12
M-2 13
Center 14
M-4 15
M-5 12
Top 13
Trial 2 Edge 10
N-2 11
Center 11
N-4 12
N-5 13
Top 14
Trial 3 Edge 15
R-2 13
Center 12
R-4 11
R-5 10
Top 3
我希望我的图表如下所示: Chart-1 . 图表应将 Location 列的值作为 X 轴,即字符串对象。这可以很容易地完成(通过使用/创建位置作为数组),
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
datalink=('/Users/Maxwell/Desktop/W1.xlsx')
df=pd.read_excel(datalink,skiprows=2)
x1=df.loc[:,['Location']]
x2=df.loc[:,['Values']]
x3=np.linspace(1,len(x2),num=len(x2),endpoint=True)
vals=['Location','Edge','M-2','Center','M-4','M-5','Top','Edge','N-2','Center','N-4','N-5','Top','Edge','R-2']
plt.figure(figsize=(12,8),dpi=300)
plt.subplot(1,1,1)
plt.xticks(x3,vals)
plt.plot(x3,x2)
plt.show()
但是,我还想在 X 轴上显示 Trial-1、Trial-2 ..。到目前为止,我一直在使用 Excel 生成图表,但是我有很多类似的数据,并且想使用 python 来自动完成任务。
【问题讨论】:
-
如果你可以分享一个minimal reproducible example 生成你称之为“这很容易做到”的情节的代码,它将帮助人们真正为你提供问题的解决方案。
-
我想你误解了我。情节是在 Excel 中创建的。我正在寻找在 python 中生成类似图表的代码。
-
那么“这可以很容易地完成”是什么意思呢?我的评论旨在帮助您提出一个问题,可以在此问答网站的范围内回答。您当然可能会问是否有人可以为您编写完整的代码 - 但是我怀疑是否有人真的会这样做;但你仍然可以尝试。您可能还想了解this question 及其答案对您有多大帮助。
-
@ImportanceOfBeingErnest :对不起,所有的混乱/滋扰。我已经编辑了我的问题,并且包括了到目前为止我所做的事情。我希望现在对阅读问题/帖子的任何人都有意义。我试图通过this question。我没有看到对代码的任何评论,我对 python 很陌生,很难理解哪个代码在做什么。
标签: python excel string matplotlib charts