latt와 lont라는 두 개의 목록이 주어졌을 때 목표는 각 항목이 있는 단일 선을 그리는 것입니다. 연속된 10개의 점으로 이루어진 선분은 다른 색으로 표현됩니다.
선분의 개수 제한
선분의 개수가 적은 경우 , 예를 들어 10 이하인 경우 간단한 접근 방식은 루프를 사용하여 각 세그먼트를 고유한 색상으로 플롯하는 것입니다.
<code class="python">import numpy as np import matplotlib.pyplot as plt # Generate random colors def uniqueish_color(): return plt.cm.gist_ncar(np.random.random()) # Plot the line segments xy = (np.random.random((10, 2)) - 0.5).cumsum(axis=0) fig, ax = plt.subplots() for start, stop in zip(xy[:-1], xy[1:]): x, y = zip(start, stop) ax.plot(x, y, color=uniqueish_color()) plt.show()</code>
많은 수의 선 세그먼트
선 세그먼트 수가 많은 경우 루프를 사용하면 속도가 느려질 수 있습니다. 대신 LineCollection 객체를 생성합니다.
<code class="python">import numpy as np import matplotlib.pyplot as plt from matplotlib.collections import LineCollection # Generate the line segments xy = (np.random.random((1000, 2)) - 0.5).cumsum(axis=0) xy = xy.reshape(-1, 1, 2) segments = np.hstack([xy[:-1], xy[1:]]) # Create a LineCollection object fig, ax = plt.subplots() coll = LineCollection(segments, cmap=plt.cm.gist_ncar) # Set the color array coll.set_array(np.random.random(xy.shape[0])) # Add the LineCollection to the axes ax.add_collection(coll) ax.autoscale_view() # Display the plot plt.show()</code>
두 가지 접근 방식 모두 "gist_ncar" 색상 맵을 사용하여 고유한 색상을 생성합니다. 다른 컬러맵 옵션은 이 페이지를 참조하세요: http://matplotlib.org/examples/color/colormaps_reference.html
위 내용은 연속된 10개 점의 각 세그먼트에 대해 다양한 색상으로 선을 그리는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!