如何使用例如matplotlib在python中绘制纵向数据。
from pandas import DataFrame
from scipy.stats import norm
from scipy.stats import randint
import numpy as np
import pandas as pd
# some sample data
df = DataFrame({
'one' : norm.rvs(loc=12, size=10),
'two' : norm.rvs(loc=5, size=10),
'three' : norm.rvs(loc=7, size=10),
'four' : norm.rvs(loc=3, size=10),
'type' : ['type-%i' % i for i in randint.rvs(0,3,size=10)]})
如何在x轴上绘制重复测量的标签:一 - 二 - 三 - 四,并且对于10个样本中的每一个,连接各自值的线?如何按类型为每个样本着色?
答案 0 :(得分:0)
我没有理解连接线的这一部分,但也许这就是你想要的东西:
fig, ax = plt.subplots( 1, 1 )
ax.plot( np.zeros(len(df.one))+1, df.one, '.' )
ax.plot( np.zeros(len(df.two)) + 2, df.two, '.' )
ax.plot( np.zeros(len(df.three)) + 3 , df.three, '.' )
ax.plot( np.zeros(len(df.four)) + 4, df.four, '.' )
ax.set_xticks([1,2,3,4]);
ax.set_xticklabels(( 'one', 'two', 'three', 'four' ))
ax.set_xlim([0,5]);
结果如下: