Mathematica画图的一个问题sol = Solve[{m^2 + n^2 == 36,(m - 7)^2 + n^2 == 25},{m,n}][[1]];{m,n} /.sol;p3 = ContourPlot[(x - m)^2 + (y - n)^2 == 4,{x,-10,10},{y,-10,10}];Show[p3]以上语句是想从方程中解出m、n两个数(用“[[1]]”取第一组解),然后以(m,n)为圆心画圆.可是画出来的是一片空白.
问题描述:
Mathematica画图的一个问题
sol = Solve[{m^2 + n^2 == 36,(m - 7)^2 + n^2 == 25},{m,n}][[1]];
{m,n} /.sol;
p3 = ContourPlot[(x - m)^2 + (y - n)^2 == 4,{x,-10,10},{y,-10,10}];
Show[p3]
以上语句是想从方程中解出m、n两个数(用“[[1]]”取第一组解),然后以(m,n)为圆心画圆.可是画出来的是一片空白.
答
问题在于变量m,n并没得到赋值,或者说不存在变量m,n,你的程序还没有定义它们.
{m,n} /.sol只是按规则替代,替代完后形式哑元m,n的使命完成了,生命也就完结了.
改成赋值语句{m,n} = {m,n} /.sol即可