在散点图的pyplot文档中:
matplotlib.pyplot.scatter(x, y, s=20, c='b', marker='o', cmap=None, norm=None,
vmin=None, vmax=None, alpha=None, linewidths=None,
faceted=True, verts=None, hold=None, **kwargs)
Run Code Online (Sandbox Code Playgroud)
标记大小
s:以磅为单位的大小^ 2.它是一个标量或与x和y长度相同的数组.
什么样的单位points^2?这是什么意思?是否s=100意味10 pixel x 10 pixel?
基本上我正在尝试制作具有不同标记大小的散点图,我想弄清楚这个s数字是什么意思.
我有一组数据要显示为散点图.我希望每个点都被绘制成一个大小的正方形dx.
x = [0.5,0.1,0.3]
y = [0.2,0.7,0.8]
z = [10.,15.,12.]
dx = [0.05,0.2,0.1]
scatter(x,y,c=z,s=dx,marker='s')
Run Code Online (Sandbox Code Playgroud)
问题是s分散函数读取的大小为点^ 2.我想要的是每个点由面积dx ^ 2的平方表示,其中该区域是"实际"单位,即绘图单位.我希望你能明白这一点.
我还有另一个问题.散点函数用黑色边框绘制标记,如何删除此选项并且根本没有边框?
我想绘制属于某些组的变量.
假设我有6个变量,我想要分成这3组,并绘制像维恩图.我想将变量名称注释为三个气泡.
在这个简单的例子中,我们可以说1个变量在组1中,3个变量在组2中,2个变量在组3中.
任何人都可以帮我一个简单的例子来说明如何在matplotlib中做到这一点?
有没有办法让matplotlib绘制一个完美的圆圈?它们看起来更像椭圆形.
我有浮动 x/y阵列,其中包含圆心.
import matplotlib.pylab as plt
import numpy as np
npX = np.asarray(X)
npY = np.asarray(Y)
plt.imshow(img)
// TO-DO
plt.show()
Run Code Online (Sandbox Code Playgroud)
我想通过使用这个中心在我的图像上显示圆圈.我怎样才能实现这一目标?
我想给python提供点[0,1],[1,0]和[0,-1]并绘制经过它们的圆圈.存在一个python模块,使这个?我尝试过使用matplotlib:
import matplotlib.pyplot as plt
plt.plot([0,1,0],[1,0,-1])
plt.show()
Run Code Online (Sandbox Code Playgroud)
但只给了我两行.
以下代码对我来说绝对不可理解:
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np
img=mpimg.imread('stinkbug.png')
imgplot = plt.imshow(img)
circle = plt.Circle((0, 0), radius=100, fc='y')
plt.figure(0)
#plt.show(imgplot)
plt.show(circle)
Run Code Online (Sandbox Code Playgroud)
它显示两个数字,虽然不只有一个show()函数被调用.
虽然imgplot从未显示过,但它在图中显示了臭椿.
尽管显示了圆圈,但它不显示圆圈.