大熊猫使用字符绘制两个变量

时间:2017-06-15 16:06:23

标签: python-2.7 pandas plot

我试图绘制两个变量fdr_new和fdr_old用不同的字符和颜色蓝色和o为fdr_old红色和x为fdr_new下面是我试过的我没有看到任何红色和x我的情节不知道我是什么做错了(仅粘贴df.head())

df:

df = pd.read_csv('~/plot.txt', sep='\t')
df.head()
id1 fdr_new fdr_old
a   0.025673    0.004912
b   0.098444    0.002133
c   0.00003 0.000004
d   0.330957    0.302002
e   0.939168    0.932705

代码:

coff.plot(x='fdr_new', y='fdr_old', style=['bo','rx'])

使用代码绘图:

import pandas as pd 
import seaborn as sns
%matplotlib inline
import matplotlib.pyplot as plt
%config InlineBackend.figure_format = 'retina'
rd = pd.read_clipboard()
rd.head()
        id1 fdr_new fdr_old
0   a   0.025673    0.004912
1   b   0.098444    0.002133
2   c   0.000030    0.000004
3   d   0.330957    0.302002
4   e   0.939168    0.932705
rd.plot(x = 'id1', y = ['fdr_new','fdr_old'], style=['bo','rx'])

enter image description here

改变颜色: enter image description here

关闭并停止后: enter image description here

改变风格完成了工作,同时删除了导入' retina'命令。 enter image description here

2 个答案:

答案 0 :(得分:3)

这是一个散点图,其中每个点都是由fdf_new的一个部分和fdr_old的另一个部分组成的坐标对。此图上的任何一点都不仅来自fdr_newfdr_old。由于您的fdr_old被指定为y轴,因此它被假定为系列名称,这就是您在图例中看到它的原因。但只使用了第一种风格...因为你只有一系列的分数。

我能看到调和我认为你要做的事情的唯一方法是将fdr_oldfdr_new视为单独的时间序列。

df[['fdr_old', 'fdr_new']].plot(style=['bo', 'rx'])

enter image description here

您甚至可以将id1放在x轴

df.set_index('id1').plot(style=['bo', 'rx'])

enter image description here

答案 1 :(得分:3)

您可以使用多个Y轴参数

df.plot(x = 'id1', y = ['fdr_new','fdr_old'], style=['bo','rx'])

enter image description here