あなたの良い例はscatter plot exampleです。あなたのケースでは
は、close
配列の代わりに、あなたは'r'
の1、'g'
、または'b'
ている文字列の一部の配列をしたいです。したがって、ブランドの配列を読むことができれば、その文字の配列に変換することができます。 (そして、私はあなたが円異なるサイズを作るvolume
配列、同等のものを望んでいないと思います。)
あなたが次に
brandcolors = [brand[i].replace('HP','g').replace('Lenovo','r').replace('Dell','b') for i in range(len(brand))]
、プロットのようなものと色にあなたのbrand
配列を翻訳できこの関数は
伝説少しトリッキー取得を追加
scatter(cost, rating, c=brandcolors)
ようになります。 matplotlib docsは何かを作成するプロキシアーティストを使用することを提案しますが、プロットには載せません。たとえば、次の
それは関係なく、ドット形状の長方形で出てくるので、少し醜いです
pr = Rectangle((0, 0), 1, 1, fc='r')
pg = Rectangle((0, 0), 1, 1, fc='g')
pb = Rectangle((0, 0), 1, 1, fc='b')
legend([pr, pg, pb], ['Lenovo', 'HP', 'Dell'])
。もう1つの可能性のあるハックは、実際には1つのドットをプロットすることですが、プロット領域から離れていることを確認してください。
plot([-100], 'ro', label='Lenovo')
...
ax.set_ylim(bottom=0)
legend()
おそらく、3つのグループを持ち、 'scatter() 'を3回呼び出すのが最善の方法でしょう。 [pandas](http://pandas.pydata.org/)はこれを簡単にします。 –