在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Python/ 為什么填充部分少了一塊,我該如何解決?

為什么填充部分少了一塊,我該如何解決?

我要在圖中[a,b]區(qū)間填充顏色,本來(lái)想用多邊形的方法,但覺(jué)得直接填充更直接點(diǎn),我是用的是fill_betweenx的方法,為設(shè)么只有y>=0部分被填充了,下面的部分沒(méi)有被填充?
代碼如下:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches

#構(gòu)造數(shù)據(jù)
x = np.linspace(-2,3,100)
y = -x**2+4


fig,ax = plt.subplots()
line = ax.plot(x,y,lw=2,c='r')
ax.set_xlim(-2,2)
ax.set_ylim(-4,6)

a = -1
b = 1
ax.set_xticks([a,b])
ax.set_xticklabels(['a','b'])
#ax.set_yticks([])

fig.text(0.9,0.05,'x')
fig.text(0.1,0.9,'y')

ax.text(0,-2,r'$\int_{a}^-x^2+4$dx',size=20,family='fantasy',ha='center')


ax.fill_between(x,y,where=(a<=x)&(x<=b))![圖片描述][1]

plt.show()

生成效果如下
圖片描述

回答
編輯回答
懶豬

ax.set_ylim(0,6)
ax.text(0,-1,r'$\int_{a}^-x^2+4$dx',size=20,family='fantasy',ha='center')

clipboard.png

ax.set_xlim(-4,4)
ax.set_ylim(-4,5)

clipboard.png

a = -2
b = 4

min(x[a<=x]) = -2, min(x[x<=b]) = 3

ax.fill_between(x,y,where=(a<=x)&(x<=b))

clipboard.png

2018年6月18日 04:17