본문 바로가기
반응형

파이썬123

[파이썬 matplotlib] 막대그래프 눈금 없애는 방법 [파이썬 matplotlib] 막대그래프 눈금 없애는 방법 간단한 막대그래프를 그려봅시다. import matplotlib.pyplot as plt X=[1,3,5,7]data = [1,2,3,4]plt.bar(X, data) tick을 없애고 글자만 남기고 싶은 경우 아래 옵션을 추가하면 됩니다. plt.tick_params( axis='x', bottom=False) plt.show() 2020. 11. 16.
[파이썬 matplotlib] 그룹형 막대그래프 [파이썬 matplotlib] 그룹형 막대그래프 그룹형 막대그래프를 그리는 원리는, 한 그래프에 여러 막대그래프를 그리고 각 막대그래프가 서로 겹치지 않는 위치에 있도록 하는 것입니다. 따라서 각 그래프의 width와 그래프 사이 간격을 잘 고려해주어야 합니다. 그래프 width를 0.5로 놓겠습니다. 간격도 0.5씩 떨어지도록 해주면 됩니다. import matplotlib.pyplot as plt X1=[1,3,5,7]data1 = [1,2,3,4]plt.bar(X1, data1,color='r',width=0.5) X2=[1+0.5,3+0.5,5+0.5,7+0.5]data2 = [2,3,4,5]plt.bar(X2, data2,color='g',width=0.5) X3=[1+1,3+1,5+1,7+1].. 2020. 11. 16.
[파이썬 matplotlib] 막대그래프 눈금 크기, 회전 설정 [파이썬 matplotlib] 막대그래프 눈금 크기, 회전 설정 아래와 같은 막대그래프를 그려봅시다. import matplotlib.pyplot as plt X=[1,3,5,7]data = [1,2,3,4]plt.bar(X, data,color='r') ticklabel=['a','b','c','d']plt.xticks(X,ticklabel) plt.show() 눈금 크기는 fontsize 옵션, 회전은 rotation 옵션을 사용합니다. X=[1,3,5,7]data = [1,2,3,4]plt.bar(X, data,color='r')ticklabel=['a','b','c','d']plt.xticks(X,ticklabel,fontsize=15,rotation=-30) plt.show() 2020. 11. 16.
[파이썬 matplotlib] 막대그래프 눈금 이름 설정 (xticks 메소드) [파이썬 matplotlib] 막대그래프 x눈금 이름 설정 (xticks 메소드) 아래와 같이 코드를 짜면 눈금 이름이 a,b,c,d로 입력됩니다. import matplotlib.pyplot as plt X=['a','b','c','d']data = [1,2,3,4] plt.bar(X, data,color='r')plt.show() 하지만 별로 추천하고 싶은 방법은 아닙니다. X축 눈금을 컨트롤 할 수 없기 때문입니다. 아래와 같이 입력하면 눈금도 컨트롤할 수 있고, 눈금 이름도 입력할 수 있습니다. X=[1,3,5,7]data = [1,2,3,4]plt.bar(X, data,color='r') ticklabel=['a','b','c','d']plt.xticks(X,ticklabel) plt.show(.. 2020. 11. 16.
[파이썬 matplotlib] 막대그래프 색 변경 [파이썬 matplotlib] 막대그래프 색 변경 matplotlib 패키지를 불러옵니다. import matplotlib.pyplot as plt 막대그래프 X축에 사용될 값과, 높이값을 정의합니다. X=[1,3,5,7]height = [1,2,3,4] bar 함수로 그래프를 그립니다. 색 설정은 color 옵션을 사용하시면 됩니다. plt.bar(X, height,color='r')plt.show() 아래는 결과입니다. 입력 가능한 색의 종류는 아래 링크를 참고해주세요. https://matplotlib.org/3.1.0/gallery/color/named_colors.html 2020. 11. 13.
[파이썬 matplotlib] 막대그래프 두께 조절 [파이썬 matplotlib] 막대그래프 두께 조절 matplotlib 패키지를 불러옵니다. import matplotlib.pyplot as plt 막대그래프 X축에 사용될 값과, 높이값을 정의합니다. X=[1,3,5,7]data = [1,2,3,4] bar 함수로 그래프를 그립니다. 두께설정은 width 옵션을 이용합니다. 디폴트는 0.8입니다. plt.bar(X, data,width=1.5)plt.show() 아래는 결과입니다. 2020. 11. 13.
[파이썬 matplotlib] 막대그래프 (가로방향) [파이썬 matplotlib] 막대그래프 (가로방향) matplotlib 패키지를 불러옵니다. import matplotlib.pyplot as plt 막대그래프 X축에 사용될 값과, 높이값을 정의합니다. X=['a','b','c','d']height = [1,2,3,4] barh 함수로 그래프를 그립니다. bar horizontal 의 약어입니다. plt.barh(X, height)plt.show() 결과는 아래와 같습니다. 2020. 11. 13.
[파이썬 matplotlib] 막대그래프 [파이썬 matplotlib] 막대그래프 matplotlib 패키지를 불러옵니다. import matplotlib.pyplot as plt 막대그래프 X축에 사용될 값과, 높이값을 정의합니다. X=[1,2,3,4]height = [1,2,3,4] bar 함수로 그래프를 그립니다. plt.bar(X, height)plt.show() 결과는 아래와 같습니다. 2020. 11. 13.
[파이썬 matplotlib] 산점도 그래프 (scatter 함수 이용) [파이썬 matplotlib] 산점도 그래프 (scatter 함수 이용) numpy와 matplotlib 패키지를 불러옵니다. >>> import numpy as np>>> import matplotlib.pyplot as plt random.rand 함수를 이용하여 0~1사이의 값을 가진 크기 (100,2)의 배열을 만듭니다. >>> md= np.random.rand(100, 2) scatter 함수로 그래프를 그립니다. >>> plt.scattermd[:,0], md[:,1])>>> plt.show() 결과는 아래와 같습니다. 2020. 11. 13.
[파이썬 matplotlib] 한 화면에 여러 그래프 겹쳐 그리기 [파이썬 matplotlib] 한 화면에 여러 그래프 겹쳐 그리기 numpy와 matplotlib 패키지를 불러옵니다. import numpy as npimport matplotlib.pyplot as plt linspace 함수를 이용하여 0부터 4파이 사이를 200개로 나눈 X값을 생성합니다. X = np.linspace(0, 4 * np.pi, 200) Y값은 사인함수 하나와 코사인함수 하나를 적용하여 두개 생성합니다. Y1 = np.sin(X)Y2 = np.cos(X) 그래프를 그립니다. plt.plot 를 두번 사용해줍니다. plt.plot(X, Y1)plt.plot(X, Y2) plt.show() 결과는 아래와 같습니다. 2020. 11. 13.
[파이썬 matplotlib] 사인(sin)함수 그래프 그리기 [파이썬 matplotlib] 사인(sin)함수 그래프 그리기 numpy와 matplotlib 패키지를 불러옵니다. >>> import numpy as np>>> import matplotlib.pyplot as plt linspace 함수를 이용하여 0부터 4파이 사이를 200개로 나눈 X값을 생성합니다. Y값은 사인함수를 사용하여 생성합니다. >>> X=np.linspace(0,4*np.pi,200)>>> Y=np.sin(X) 그래프를 그립니다. >>> plt.plot(X,Y)>>> plt.show() 결과는 아래와 같습니다. 2020. 11. 13.
[파이썬 matplotlib] x=y^2 그래프 그리기 [파이썬 matplotlib] x=y^2 그래프 그리기 먼저 matplotlib.pyplot 을 불러옵니다. as plt 라는 것은, matplotlib.pyplot 이 너무 길어서 이거 대신 plt를 쓰겠다는 의미입니다. >>> import matplotlib.pyplot as plt 0~99까지의 자연수로 X를 정의하고, Y는 x제곱으로 정의합니다. >>> X=range(100)>>> Y=[value**2 for value in X] 그래프를 그려줍니다. 실제로는 matplotlib.pyplot.plot(X,Y) 코드를 실행한 것입니다. >>> plt.plot(X,Y)>>> plt.show() 아래는 결과입니다. 2020. 11. 13.
[파이썬과 STL] 5. 두 점과 평면의 교점 함수 사용해보기 [파이썬과 STL] 5. 두 점과 평면의 교점 함수 사용해보기 지난시간에 정의한 함수를 사용해봅시다. import numpy as np def po2pl1(p,q,a,N): P_p=np.dot(N,p)-np.dot(N,a) P_q=np.dot(N,q)-np.dot(N,a) result=P_p*P_q if result>0: print("no intersection point") else : return abs(P_q)/(np.abs(P_p)+np.abs(P_q))*p+abs(P_p)/(np.abs(P_p)+np.abs(P_q))*q 평면은 (0,5,0)을 지나고, 법선벡터로 (0,1,0)을 갖는 평면입니다. a=np.array([0,5,0])N=np.array([0,1,0]) 점은 아래와 같이 세 점이 있.. 2020. 11. 12.
[파이썬과 STL] 4. 두 점과 평면의 교점 함수 [파이썬과 STL] 4. 두 점과 평면의 교점 함수 지난시간에 두 점과 평면의 교점을 구한 코드를 가져옵시다. import numpy as np #두 점p=np.array([2,4,5])q=np.array([-4,-2,-6]) #평면a=np.array([1,3,2])N=np.array([2,3,5]) #두 점의 평면의방정식 함수값P_p=np.dot(N,p)-np.dot(N,a)P_q=np.dot(N,q)-np.dot(N,a) #결과, 음수인 경우 교점 존재result=P_p*P_q #교점inter_p=abs(P_q)/(np.abs(P_p)+np.abs(P_q))*p+abs(P_p)/(np.abs(P_p)+np.abs(P_q))*q 이제 함수로 바꿔봅시다. 아래와 같이 바꿨습니다. def po2pl1(p,.. 2020. 11. 12.
[파이썬과 STL] 3. 두 점과 평면의 교점 [파이썬과 STL] 3. 두 점과 평면의 교점 STL 을 평면으로 잘라서 section 을 얻고 싶습니다. 이를 위해 평면과 두 점을 입력하면 두 점을 연결한 선분과 평면의 교점을 구해주는 함수가 필요합니다. 교점이 없는 경우는 아무 것도 반환하지 않고, 교점이 있는 경우는 점을 반환합니다. 평면은 한 점과, 법선벡터로 정의됩니다. 한점 (a,b,c)법선벡터 (n1,n2,n3) 위 두 조건을 만족하는 평면의 방정식은 아래와 같습니다. P(x,y,z)라고 놓겠습니다. P(x,y,z)=n1(x-a)+n2(y-b)+n3(z-c)=0 아래와 같이 벡터의 내적 형태로도 놓을 수 있습니다. P(x,y,z)=[n1,n2,n3][x,y,z]-[n1,n2,n3][a,b,c]=0 임의의 두 점을 (p1,p2,p3) (q1.. 2020. 11. 12.
반응형