matplotlib.pyplotの色をデータ内別の列の値を元に色を変更したい
python3のmatplotlibの色付けで困っています。
plt.scatterで図示した点に元データの別の列の値を基に色を変更したいのですが、どう指定すればいいのでしょうか。
下記のnumpy arrayの第三列の値を基に、1であれば赤、2であれば青のように散布図に色付けをしたいのです。
scatterの引数、xは最終列、yは第二列としています。
元データ
array([[ 1. , 4.2, 1. , 0.5], [ 2. , 11.5, 1. , 0.5], [ 3. , 7.3, 1. , 0.5], [ 4. , 5.8, 1. , 0.5], [ 5. , 6.4, 1. , 0.5], [ 6. , 10. , 1. , 0.5], [ 7. , 11.2, 1. , 0.5], [ 8. , 11.2, 1. , 0.5], [ 9. , 5.2, 1. , 0.5], [ 10. , 7. , 1. , 0.5], [ 11. , 16.5, 1. , 1. ], [ 12. , 16.5, 1. , 1. ], [ 13. , 15.2, 1. , 1. ], [ 14. , 17.3, 1. , 1. ], [ 15. , 22.5, 1. , 1. ], [ 16. , 17.3, 1. , 1. ], [ 17. , 13.6, 1. , 1. ], [ 18. , 14.5, 1. , 1. ], [ 19. , 18.8, 1. , 1. ], [ 20. , 15.5, 1. , 1. ], [ 21. , 23.6, 1. , 2. ], [ 22. , 18.5, 1. , 2. ], [ 23. , 33.9, 1. , 2. ], [ 24. , 25.5, 1. , 2. ], [ 25. , 26.4, 1. , 2. ], [ 26. , 32.5, 1. , 2. ], [ 27. , 26.7, 1. , 2. ], [ 28. , 21.5, 1. , 2. ], [ 29. , 23.3, 1. , 2. ], [ 30. , 29.5, 1. , 2. ], [ 31. , 15.2, 2. , 0.5], [ 32. , 21.5, 2. , 0.5], [ 33. , 17.6, 2. , 0.5], [ 34. , 9.7, 2. , 0.5], [ 35. , 14.5, 2. , 0.5], [ 36. , 10. , 2. , 0.5], [ 37. , 8.2, 2. , 0.5], [ 38. , 9.4, 2. , 0.5], [ 39. , 16.5, 2. , 0.5], [ 40. , 9.7, 2. , 0.5], [ 41. , 19.7, 2. , 1. ], [ 42. , 23.3, 2. , 1. ], [ 43. , 23.6, 2. , 1. ], [ 44. , 26.4, 2. , 1. ], [ 45. , 20. , 2. , 1. ], [ 46. , 25.2, 2. , 1. ], [ 47. , 25.8, 2. , 1. ], [ 48. , 21.2, 2. , 1. ], [ 49. , 14.5, 2. , 1. ], [ 50. , 27.3, 2. , 1. ], [ 51. , 25.5, 2. , 2. ], [ 52. , 26.4, 2. , 2. ], [ 53. , 22.4, 2. , 2. ], [ 54. , 24.5, 2. , 2. ], [ 55. , 24.8, 2. , 2. ], [ 56. , 30.9, 2. , 2. ], [ 57. , 26.4, 2. , 2. ], [ 58. , 27.3, 2. , 2. ], [ 59. , 29.4, 2. , 2. ], [ 60. , 23. , 2. , 2. ]])

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/11 12:30