2

2D 空間の点が与えられたとき、

その関数が属する「ゾーン」を指定できる関数があります。ゾーンには「1、2、3、...」の番号が付けられています。

この機能を使用して、2D 空間で多数のランダム ポイントを取得し、各ゾーンに色を付けました。それらのそれぞれは、1番目のゾーン(青)、2番目のゾーン(緑)である中央(正方形)から始まり、内側から外側へと続きます. 次のようになります。 ここに画像の説明を入力

多くのポイントのように見えずに、このプロットを連続的に見せるにはどうすればよいですか? (各ゾーンには 1 つの滑らかな色があります)

私が使用した:

import matplotlib.pyplot as plt
for zone in zones:
    plt.plot(X, Y, 'o')  # picks a different color automatically
plt.show()

ここで、ゾーンは次の形式の辞書です

{zone:[X, Y]}

例: {1:[[x1, x2, ...], [y1, y2, y3, ...]], 2:[[x11, x22, ...} (x1, y1), ( x2, y2), ... 最初のゾーン (x11, y11) に属し、... 2 番目のゾーンに属し...

4

2 に答える 2

4

3 つの簡単な提案:

  1. マーカーの境界線を削除します (Gaby aka G. Petrioli既に提案されているように)。
  2. 小さいマーカーを使用して、エッジのオーバーラップを減らします。
  3. より多くのマーカーを使用してください - スペースが均等にカバーされるようにします (もちろん、マーカーのサイズを大きくすると、エリアをカバーするためにさらに多くのマーカーが必要になります)。

このような:

ここに画像の説明を入力

これから:

import matplotlib.pyplot as plt
import numpy as np

data1 = np.random.random_sample((2, 10000))
data2 = np.random.random_sample((2, 100000))
plt.plot(data1[0], data1[1], 'o',markersize=10, markeredgewidth=1)
plt.plot(data1[0], data1[1]+1, 'o',markersize=10, markeredgewidth=0)
plt.plot(data2[0], data2[1]+2, 'o',markersize=1, markeredgewidth=0)

plt.xlim((-0.5,1.5))
plt.ylim((-0.5,3.5))
plt.show()
于 2012-06-09T14:48:17.307 に答える
1

It would certainly improve if you removed the black border of the markers..

try plt.plot(X, Y, marker='o', markeredgewidth=0)

于 2012-06-09T13:08:05.543 に答える