기본 콘텐츠로 건너뛰기

라벨이 fill_between인 게시물 표시

[matplotlib]quiver()함수

함수의 그래프: 적분의 적용

다음 그림들은 전자책 파이썬과 함께하는 미분적분 의 7장에 수록된 그래프들과 코드들입니다. import numpy as np import pandas as pd from sympy import * import matplotlib.pyplot as plt import seaborn as sns sns.set_style("darkgrid") def axisTran(ax): ax.spines['left'].set_position(("data", 0)) ax.spines['bottom'].set_position(("data", 0)) ax.spines['right'].set_visible(False) ax.spines['top'].set_visible(False) #그림 7.1.1 a=symbols("a") f=(a-1)*(a-2)*(a-5)+5 x=np.linspace(0.5,5, 100) y=[f.subs(a, i) for i in x] fig,ax=plt.subplots(figsize=(4,3)) ax.plot(x, y ,color="g", label="f(x)") idx=np.linspace(0, 99, 7).astype(int) for i in range(1, len(idx)): x0=x[[(idx[i-1]),idx[i]]] y0=[f.subs(a, i) for i in x0] ax.scatter(x0, y0, s=50, c="b") ax.plot(x0, y0, ls="dashed", color="r") ax.text(x[(idx[i-1])]+0.2, f.subs(a, x[(idx[i-1])]), f"p{i-1}" , color="b"...

함수의 그래프: 정적분

다음 그림들은 전자책 파이썬과 함께하는 미분적분 의 6.3장과 6.4장에 수록된 그래프들과 코드들입니다. import numpy as np import pandas as pd from sympy import * import matplotlib.pyplot as plt import seaborn as sns sns.set_style("darkgrid") def axisTran(ax): ax.spines['left'].set_position(("data", 0)) ax.spines['bottom'].set_position(("data", 0)) ax.spines['right'].set_visible(False) ax.spines['top'].set_visible(False) #그림 6.3.1 a=symbols("a") f=(a-1)*(a-2)*(a-3)+3 x=np.linspace(0, 5, 100) y=[f.subs(a, i) for i in x] plt.figure(figsize=(4,3)) plt.plot(x, y ,color="g", label="f(x)") x0, x1=np.linspace(1, 2.5, 20), np.linspace(2.5, 4, 20) fy0, fy1=[float(f.subs(a, i)) for i in x0], [float(f.subs(a, i)) for i in x1] plt.fill_between(x0, fy0, color="b", alpha=0.5, label="F(x)") plt.fill_between(x1, fy1, color="r", alpha=0.5, label="F(x+h)-F(X)") plt.xticks([1, 2.5, 4], ["a=0...

함수의 그래프: 부정적분

다음 그림들은 전자책 파이썬과 함께하는 미분적분 의 6.1장에 수록된 그래프들과 코드들입니다. import numpy as np import pandas as pd from sympy import * import matplotlib.pyplot as plt import seaborn as sns sns.set_style("darkgrid") def axisTran(ax): ax.spines['left'].set_position(("data", 0)) ax.spines['bottom'].set_position(("data", 0)) ax.spines['right'].set_visible(False) ax.spines['top'].set_visible(False) #그림 6.1.1 x=np.linspace(0, 3, 100) y=3*x plt.figure(figsize=(4,3)) plt.plot(x, y, color="g", lw=3, label="f(x)=3x") plt.fill_between(x, y, alpha=0.6) plt.xlabel("Time(hr)", fontsize="11") plt.ylabel("Vel\n(km/hr)", rotation="horizontal", fontsize="11", labelpad=20) plt.legend(loc=(0.2, 0.9), labelcolor='g', frameon=False) plt.show() #그림 6.1.2 x=[0, 50, 125, 200] y=[400, 400, 300, 250] fig, ax=plt.subplots(figsize=(4,3)) ax.step(x, y, 'g') ax.fill_betw...