matplotlib来自数据帧的线图

问题描述:

我想从10488行vs 3列的数据框在matplotlib中创建线图。我的数据帧如下所示:matplotlib来自数据帧的线图

  col_A col_B col_C 
target_id   
KYQ35740 22.67 19.7 26.0 
KYQ35675 9.21 3.2 3.1 
KYQ35736 73.93 42.8 24.6 
KYQ35737 349.94 602.6 212.4 
KYQ35685 16.10 19.5 29.1 

这里,target id是索引。我做的试验是:

import pandas as pd 
import matplotlib.pyplot as plt 
plt.style.use('ggplot') 
%matplotlib inline 

df = pd.read_csv("Data.txt", sep='\t', index_col=['target_id'])  
df.plot() 

我得到一个条形图,包含x轴上的目标ID和三个代表每列的彩条。但是,我需要制作它的转置。即col_A,col_B,col_C在x轴上标记带有穿过系列的10488行的绘图。我不需要图例中的target_ids。

我试着用df.T和df.plot()转置df。但系统挂起,我认为是由于10488标签需要放入图例?!

在此先感谢您的帮助。

AP

+0

对不起,我不明白所产生的剧情应该是什么样子等。 *“用10488行标记的系列”*是什么意思?我知道你想在x轴上有三个类别col_A,.. col_C。但是,积分应该如何表示? – ImportanceOfBeingErnest

如果你想摆脱的传说,你可以使用legend=False

import pandas as pd 
import io 
import matplotlib.pyplot as plt 

u = u"""target_id col_A col_B col_C   
KYQ35740 22.67 19.7 26.0 
KYQ35675 9.21 3.2 3.1 
KYQ35736 73.93 42.8 24.6 
KYQ35737 349.94 602.6 212.4 
KYQ35685 16.10 19.5 29.1""" 

df = pd.read_csv(io.StringIO(u), delim_whitespace=True,index_col=['target_id']) 
df=df.T 

df.plot(legend=False) 
plt.show() 

enter image description here