0

x、yは円の位置、rは半径(すべてのベクトル)です。一度にすべてをプロットしたいと思います。何かのようなもの:

import matplotlib.pyplot as plt
from matplotlib.patches Circle

#define x,y,r vectors

fig = plt.figure()
ax1 = fig.add_subplot(1,1,1)
plt.Circle((x,y),r,color='r')
plt.show()

ありがとう。

4

2 に答える 2

1

plt.scatterを使用すると、プロットされるポイントの半径を定義できます。

ドキュメントから

matplotlib.pyplot.scatter(x, y, s=20, c='b', marker='o')
[...]

s:
    size in points^2. It is a scalar or an array of the same length as x and y.

遊んでfacecoloredgecolorあなたはあなたが望むものを手に入れることができるはずです

matplot散布図の各バブルのset_gid()の方法に例がありますか?

于 2013-02-04T17:24:48.947 に答える
0

Circlesパッチについては知らされていませんが、標準のplotコマンドを使用してこれを行う方法は次のとおりです。

import numpy as np
import matplotlib.pyplot as plt

x = np.array([0.2,0.4])
y = np.array([0.2,1.2])
r = np.array([0.5,0.3])

phi = np.linspace(0.0,2*np.pi,100)

na=np.newaxis

# the first axis of these arrays varies the angle, 
# the second varies the circles
x_line = x[na,:]+r[na,:]*np.sin(phi[:,na])
y_line = y[na,:]+r[na,:]*np.cos(phi[:,na])

plt.plot(x_line,y_line,'-')
plt.show()

plt.plot(...)基本的な考え方は、コマンドに2つの2D配列を与えることです。その場合、それらはプロットのリストとして解釈されます。特に多くのプロット(=多くの円)では、これは円ごとにプロットするよりもはるかに高速です。

于 2013-02-06T21:12:00.450 に答える