두 개의 데이터 포인트 목록(latt 및 lont)이 주어지면 목표는 데이터를 다음과 같이 시각화하는 것입니다. 다양한 색상의 라인. 선은 기간으로 분할되어야 하며 각 기간은 두 목록의 10개 데이터 포인트로 구성됩니다. 기간별로 서로 다른 색상을 지정해야 합니다.
방법 1: 선분 수 제한
소수의 선분의 경우, 다음 접근 방식을 사용할 수 있습니다.
<code class="python">import numpy as np import matplotlib.pyplot as plt def uniqueish_color(): """Generate a unique-looking color.""" return plt.cm.gist_ncar(np.random.random()) # Generate random data xy = (np.random.random((10, 2)) - 0.5).cumsum(axis=0) # Create a figure and axis fig, ax = plt.subplots() # Iterate over segments for start, stop in zip(xy[:-1], xy[1:]): x, y = zip(start, stop) ax.plot(x, y, color=uniqueish_color()) # Display the plot plt.show()</code>
방법 2: 많은 수의 선 세그먼트
많은 수의 선 세그먼트의 경우 LineCollection을 사용하여 다음을 수행할 수 있습니다. 성능 향상:
<code class="python">import numpy as np import matplotlib.pyplot as plt from matplotlib.collections import LineCollection # Generate random data xy = (np.random.random((1000, 2)) - 0.5).cumsum(axis=0) # Reshape data xy = xy.reshape(-1, 1, 2) segments = np.hstack([xy[:-1], xy[1:]]) # Create a figure and axis fig, ax = plt.subplots() # Create a LineCollection coll = LineCollection(segments, cmap=plt.cm.gist_ncar) # Set colors coll.set_array(np.random.random(xy.shape[0])) # Add collection to axis ax.add_collection(coll) # Adjust view ax.autoscale_view() # Display the plot plt.show()</code>
위 내용은 Matplotlib를 사용하여 다양한 색상으로 선을 그리는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!