【发布时间】:2021-05-25 14:16:47
【问题描述】:
我有数据点的 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] , y[i] ), 0.2 ,fill = False)
b.append(temp1)
temp2=plt.Circle(( x[i] , y[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”将具有一些值,我们将使用颜色条中的颜色在圆圈中显示颜色。
【问题讨论】:
-
请注意这不是代码编写或辅导服务。我们可以帮助解决具体的技术问题,而不是对代码或建议的开放式请求。请编辑您的问题以显示您迄今为止尝试过的内容,以及您需要帮助的具体问题。请参阅How To Ask a Good Question 页面,详细了解如何最好地帮助我们。
-
@itprorh66 抱歉没有写出完整的问题,我已经用代码和输出编辑了问题。
标签: python-3.x matplotlib scatter-plot contour