Matplotlib ylim和xlim不兼容散点图和线图或fill_between

时间:2016-03-02 09:26:59

标签: python python-3.x matplotlib

我遇到了一个我不明白的密谋问题。下面的代码应绘制一条直线,用颜色填充线上方的区域,并在其中绘制几个散点。这一切都有效,但如果我将scatter与任何linefill_between合并,我无法设置情节限制。情节区域比它原来要大得多。

那么如何设置绘图限制?

from matplotlib import pyplot as plt
import numpy as np
x = np.linspace(0,160,100)
MCSample = np.random.normal(112,10,1000)
YSample = np.random.normal(100,2.41,1000)
y_limit = max(160, np.max(YSample))

fig, ax = plt.subplots(1, 1)
ax.plot(x,x, label="Limit State function")
ax.scatter(MCSample,YSample, marker='.', color='b', alpha=0.5)
ax.fill_between(x,y_limit,x, alpha=0.1, color='r')
ax.set_xlim=(0,160)
ax.set_ylim=(0,y_limit)
plt.show()

我正在使用Python 3.5.1和Matplotlib 1.5.1。

1 个答案:

答案 0 :(得分:2)

在您的代码中,您将<textarea style="width: 500px; height: 200px;" name="PageContent2" id="PageContent2" class="details" value="<?php echo $row['PageContent2']; ?>"></textarea> 设置为等于(0,160)。

要使代码工作,你所要做的就是摆脱如下所示的等号:

<textarea style="width: 500px; height: 200px;" name="PageContent2" id="PageContent2" class="details"><?php echo $row['PageContent2']; ?></textarea>

现在您将这些限制应用于图表,而不是将它们定义为等于限制。