Pyplot:Boxplot和Dot-Plot相同的x轴不同的y轴

时间:2016-05-26 21:30:04

标签: python matplotlib plot boxplot

我正在使用Scipy。

我的运行会话中有心率(数组)和max_Distance数据。我尝试在运行时在日期上创建一个心率的箱形图,并在同一图表中绘制我的最大距离的点图。

我可以制作Dot-Plots或Boxplots,但我不能将它们组合成一个具有相同x轴的图。

我遇到的另一个问题:Boxplots写了他们的' x-Position'作为x轴的标签。 但是有几个日期他们重叠,我什么都看不懂。 如果Boxplot没有在x轴上绘制任何标签并且只写了几个线性展开日期,我会优先考虑(不确定它是否清楚我所说的是什么,我的意思是像正常xy中的值一样 - 点图不是每个点的位置都标记在x轴上。)

我尝试编写一个最小的代码示例,但不幸的是我无法创建数据变量。所以我试着展示我的数据情况(抱歉,对于糟糕的迷你示例)。在这个迷你示例中,两个图上都有自己的工作正常,但如果我尝试同时绘制两个图,我只看到Boxplot。

setDate = array(['2016-05-10T01:00:00.000000000+0100',
                 '2016-05-20T02:00:00.000000000+0200',
                 '2016-05-24T02:00:00.000000000+0200'], dtype='datetime64[ns]')

setDistance = [5.8,
               6.8,
               6.5]

setPlace_color = ['b',
                  'r',
                  'b']

heartrate_bins = [2     133.0
                  3     145.0
                  5     142.0
                  Name: Heartrate, dtype: float64,
                  17     96.0
                  19    135.0
                  20    140.0
                  Name: Heartrate, dtype: float64,
                  21    142.0
                  22    145.0
                  Name: Heartrate, dtype: float64]

代码

# Create the Figure
fig = plt.figure()
ax1 = fig.add_subplot(111)

# Plot the Distance
for i in range(0, 4): ax1.plot(setDate[i], setDistance[i], 'o', color=setPlace_color[i])

# Calculate the x-Position for the Boxplot
z = np.array([0]).astype(setDate.dtype)
plt_dates = (setDate - z) / np.timedelta64(1,'D')

# Plot the HR with Boxplots
ax2 = ax1.twinx()
ax2.boxplot(heartrate_bins, positions = plt_dates, sym='')

0 个答案:

没有答案