小小程序员一枚
确实有此问题 希望老师加以改进
smartchloe
是vmin不是vwin
gongwanyi
自己敲呗
qq_慕妹4394756
你不贴自己的代码,那就看下面的代码吧,有什么问题自己找。

炎炎夏日吃颗西瓜
有代码有图,才有真相!


weixin_慕雪6549448
紫烨152
110行“y”换成大写‘Y’
慕设计1538302
fig.add_subplot(3,3,1) #创建一个figure分为3行3列显示,第一幅
plt.axes([0.025,0.025,0.95,0.95])#范围
把以上两条语句去掉,你一图片没必要建subplot,你这样建图层下面肯定还有被覆盖的东西
慕先生4075859
你们不贴代码咋知道你们啥问题
慕先生4075859
首先要定义X和n,定义了之后这段代码在notebook中可以执行
满分爱意
你说的是matlibplot吧,这个库有两种画图方式,一种是面向对象的,ax.就是面向对象。
具体的基础可以买一本 数据手册看下 。
qq_红尘雪_iryP25
如果你写了plt.subplot(331)的还是不行那可能是粗心有了两个plt.show()
qq_懒得想_0
qq_慕仰5005434
import numpy as np
from numpy.linalg import *
import matplotlib.pyplot as plt
def main():
'''
x=np.linspace(-np.pi,np.pi,256,endpoint=True)
c,s=np.cos(x),np.sin(x)
plt.figure(1)
plt.plot(x,c,color="purple",linewidth=1.0,linestyle="-",label="COS",alpha=0.5)
plt.plot(x,s,"r",linewidth=0.5,label="SIN")
plt.title("cos & sin")
ax=plt.gca()
ax.spines["right"].set_color("none")
ax.spines["top"].set_color("none")
ax.spines["left"].set_position(("data",0))
ax.spines["bottom"].set_position(("data",0))
ax.xaxis.set_ticks_position("bottom")
ax.yaxis.set_ticks_position("left")
plt.xticks([-np.pi,-np.pi/2,0,np.pi/2,np.pi],
[r'$-\pi$',r'$-\pi/2$',r'$0$',r'$+\pi/2$',r'$+\pi$'])
plt.yticks(np.linspace(-1,1,5,endpoint=True))
for label in ax.get_xticklabels()+ax.get_yticklabels():
label.set_fontsize(16)
label.set_bbox(dict(facecolor="yellow",edgecolor="blue",alpha=0.2))
plt.legend(loc="upper left")
plt.grid()
#plt.axis([-1,1,-0.5,1])
plt.fill_between(x,np.abs(x)<0.5,c,c>0.5,color="blue",alpha=0.5)
t=1
plt.plot([t,t],[0,np.cos(t)],"y",linewidth=1,linestyle="--")
plt.annotate("cos(1)",xy=(t,np.cos(1)),xycoords="data",xytext=(+10,+30),
textcoords="offset points",arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=0.2"))
plt.show()
'''
fig=plt.figure()
ax=fig.add_subplot(331)
n=128
X=np.random.normal(0,1,n)
Y=np.random.normal(0,1,n)
T=np.arctan2(Y,X)
#plt.axes([0.025,0.025,0.95,0.95])
ax.scatter(X,Y,s=75,c=T,alpha=0.5)
plt.xlim(-1.5,1.5),plt.xticks([])
plt.ylim(-1.5,1.5),plt.yticks([])
plt.axis
plt.title("scatter")
plt.xlabel("x")
plt.ylabel("y")
fig.add_subplot(332)
n=10
X=np.arange(n)
Y1=(1-X/float(n))*np.random.uniform(0.5,1.0,n)
Y2=(1-X/float(n))*np.random.uniform(0.5,1.0,n)
plt.bar(X,+Y1,facecolor="red",edgecolor="white")
plt.bar(X,-Y2,facecolor="green",edgecolor="white")
for x,y in zip(X,Y1):
plt.text(x+0.4,y+0.05,'%.2f'%y,ha="center",va="bottom")
plt.text(x+0.4,-(y+0.05),'%.2f'%y,ha="center",va="top")
fig.add_subplot(333)
n=20
Z=np.ones(n)
Z[-1]*=2
plt.pie(Z,explode=Z*.05,colors=['%f'%(i/float(n)) for i in range(n)],
labels=['.2%f'%(i/float(n)) for i in range(n)])
plt.gca().set_aspect('equal')
plt.xticks([]),plt.yticks([])
fig.add_subplot(334,polar=True)
n=20
theta=np.arange(0.0,2*np.pi,2*np.pi/n)
radii=10*np.random.rand(n)
plt.plot(theta,radii)
fig.add_subplot(335)
from matplotlib import cm
data=np.random.rand(3,3)
cmap=cm.Blues
map=plt.imshow(data,interpolation='nearest',cmap=cmap,aspect='auto',vmin=0,vmax=1)
from mpl_toolkits.mplot3d import Axes3D
fig.add_subplot(336,projection="3d")
plt.scatter(1,1,3)
fig.add_subplot(313)
def f(x,y):
return (1-x/2+x**5+y**3)*np.exp(-x**2,-y**2)
n=256
x=np.linspace(-3,3,n)
y=np.linspace(-3,3,n)
X,Y=np.meshgrid(x,y)
plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)
plt.show
if __name__=='__main__':
main()
慕雪743630
热图:不是imterpolation 是interpolation ;3D图中把‘3D’换成‘3d’就好了
Stagelovepig
将你的文件名random.py改为其他名称,并将同目录的random.pyc文件删除掉,然后重新运行。
Stagelovepig
axis是用来设置具体某一个坐标轴的属性的,具体用法可以参照:http://matplotlib.org/api/_as_gen/matplotlib.pyplot.axis.html#matplotlib.pyplot.axis
axes的用法和subplot是差不多的,四个参数的话,前两个指的是相对于坐标原点的位置,后两个指的是坐标轴的长/宽度,可以看看这个:https://www.zhihu.com/question/51745620
weibo_拖着凳子上天台_0
T老师是引用了arctan(Y,X)这个函数用于渐变色上色呀!前面几行不是有吗
慕粉3895300
九宫格,从左到右,从上到下,一次123,456,789。消咩零回复
qq_沉淀_22
zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压)
http://www.cnblogs.com/strongYaYa/p/5870075.html
鼠尾草17
自己跟着打一遍代码会学习的更好!
慕盖茨0865858
仔细检查下,肯定有不同的地方,比如括号的位置等等,我也碰到过这个情况,对比代码.