大佬教程收集整理的这篇文章主要介绍了在python中绘制不同半径的圆形轮廓,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有数据点的 X 和 Y 坐标,对于相应的 (x,y) 坐标,我有一些值。现在我想在每个 (x,y) 处绘制一个圆形轮廓,因为我已经使用 https://matplotlib.org/3.2.1/api/_as_gen/matplotlib.patches.Circle.html 库来绘制不同半径的圆。
但是在着色时,最大的圆圈颜色接管了所有较小的圆圈。 这是代码供参考。%matplotlib qt
from scipy.interpolate import grIDdata
from numpy import linspace
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
locs=pd.read_excel(r"location of coordinates")
x=locs.iloc[:,1].values
y=locs.iloc[:,2].values
i=0
a=[]
b=[]
c=[]
d=[]
while i<len(x):
temp=plt.Circle(( x[i],y[i] ),0.1,color='y')
a.append(temp)
temp1=plt.Circle(( x[i],0.2,fill = False)
b.append(temp1)
temp2=plt.Circle(( x[i],0.3,color='g')
c.append(temp2)
i+=1
i=0
figure,axes = plt.subplots()
while i<len(x):
axes.add_artist( a[i] )
axes.add_artist( b[i] )
axes.add_artist( c[i] )
plt.Title( 'colored Circle' )
plt.xlim(-3,3.2)
plt.xticks(np.arange(-3,3.2,0.2))
plt.ylim(-0.01,1.1)
plt.yticks(np.arange(-0.1,1.1,0.1))
i=i+1
plt.scatter(x,y,marker='X',c='r',s=500)
plt.colorbar()
plt.show()
我正在尝试使用不同颜色的轮廓。此外,我将添加 plt.colorbar,根据“Z”将具有一些值,我们将使用颜色条中的颜色在圆圈中显示颜色。
您对 fill=False
的一次调用中只有一个 plt.Circle
。因此,您的第一个选择是向其他圈子添加 fill=False
。
如果您想让它们保持填充状态,您需要确保圆的 zorder
随着半径的减小而增加。
while i<len(x):
temp=plt.Circle(( x[i],y[i] ),0.1,color='y',zorder=3)
a.append(temp)
temp1=plt.Circle(( x[i],0.2,fill = False,zorder=2)
b.append(temp1)
temp2=plt.Circle(( x[i],0.3,color='g',zorder=1)
c.append(temp2)
i+=1
或者,如果您最后绘制最小的圆,它将被绘制在较大的圆之上:
while i<len(x):
axes.add_artist( c[i] )
axes.add_artist( b[i] )
axes.add_artist( a[i] )
以上是大佬教程为你收集整理的在python中绘制不同半径的圆形轮廓全部内容,希望文章能够帮你解决在python中绘制不同半径的圆形轮廓所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。