2013-07-09 3 views
0

같은 외부 속성 I 모든 요소의 수가 동일한 3에서는있다. 나는 또한 그 시간에 가열이 있었는지에 따라 부울 값 True/False로 구성된 heating_list 목록을 가지고있다. 커브가 예를 들어 가열되면 빨간색을, 파란색이면 가열하지 않기를 원합니다. 나는 색상 대신에 온도 값을 결정하는 heating_list를 사용하고자하는, 그러나 http://wiki.scipy.org/Cookbook/Matplotlib/MulticoloredLine하기 matplotlib 목록을 사용 multicoloredline 및 조건

:

나는이 예제를 발견했다. 또한 예 에서처럼 배열 수가 많지 않고 기존 목록을 사용하고 싶습니다.

편집 :

나는 무엇을 시도했다.

colors = ListedColormap(["b", "k"]) 
norm = BoundaryNorm([not heating, heating], colors.N) ### I don't really know how to define this condition 
lc = LineCollection(tuple(zip(time_list, temperature_list)), label = "T1", cmap=colors, norm=norm) 
###I tried to make my lists the same form as this "linen = (x0, y0), (x1, y1), ... (xm, ym)" 
###According to LineCollection found here: http://matplotlib.org/api/collections_api.html 

plt.gca().add_collection(lc) 
plt.show() 

는 또한 시도 : 나는 모든 우편/튜플 일을하려고하는 이유

time_plot = plt.plot(time_list, temperature_list, label = "T1") 
    time_plot.gca().add_collection(lc) 

이 내리스트가 잘못된 형식에 있던 몇 가지 문제가 있었다 이잖아. 그렇다면 어쨌든 작동하지 않을 수 있다는 것을 깨달았습니다. 왜냐하면 어떤 색상을 사용해야 하는지를 정의하는 방법을 모르기 때문입니다. 요리 책 예제는 단순히 값의 범위를 정의했지만, 온도 값에 의존하지 않고 외부 속성을 사용하기를 원했습니다.

+0

무엇을 시도 했습니까? 그 요리 책 페이지는 도전적으로 당신이 원하는 것입니다, 그래서 당신은 적응하는데 어려움을 겪고 있습니까? 당신이 현재 질문하는 바와 같이 많은 사람들을 귀찮게하는 '제 일을 해주십시오'라고 쓰여 있으며 자신의 질문에 대답 할 사람의 수를 크게 줄입니다. – tacaswell

답변

0

필자는 결국 각 플롯이 항상 한 색상이되도록 여러 플롯을 플로팅하여이 작업을 수행했습니다. 그러나 이것은 플롯 간의 작은 간격을 남기며 쉽게 하나의 플롯으로 처리 할 수 ​​없습니다.

점을 연결할 필요가없는 경우 분산 형으로 이런 종류의 작업을 수행하는 것이 더 쉽다는 것을 알았습니다. 분산 형은 인수로 색상 표를 가질 수 있기 때문입니다.