1
$\begingroup$

Overall, I'm quite happy with my Lissajous Curves poster maker; however, getting the final touches of the graphics just right has been a challenge. I've tried two different ways of constraining equally the proportions between curves: 1) Force the plot label ratio above to one line and; 2) Tried to force the proportions of the using PlotRange. I don't suppose there are any Mathematica experts out there who would care to share some ways of improving this graphical function? (I'm hoping to do some really big plots using my free Mathematica online cloud credits.)

makeLcurves[cols_,rows_] := Module[{graphics, radius = 0.45},
 (* Subroutines *)
 functionX[anglevar_, freq_] := radius * Sin[freq anglevar];
 functionY[anglevar_, freq_] := radius * Cos[freq anglevar];
 (* Draw Graphics*)
  graphics = Table[
  ParametricPlot[{functionX[t,x],functionY[t,y]},{t,0,2 Pi },
  Frame->False,
  Axes->False,
  PlotStyle->Directive[Thick,Black],
  PlotRange->{{-.5,.5},{-.5,.5}},
  Mesh->Automatic,
  PerformanceGoal->"Speed",
  PlotLabel->TraditionalForm[x/y ],
  AspectRatio->1],
  {x,rows},{y,cols}
 ];
GraphicsGrid[graphics,
 Frame->All,
 ImageSize->800]
]

makeLcurves[6,6] // Rasterize

enter image description here

$\endgroup$
  • $\begingroup$ Write your labels along a single line, e.g., $3/2$. $\endgroup$ – David G. Stork Jan 14 at 3:09
  • $\begingroup$ Or use Beveled as an option to a FractionBox. Or use Pane to enforce a height. $\endgroup$ – b3m2a1 Jan 14 at 3:18
  • 1
    $\begingroup$ Also PlotLabel -> Row[{x, "/", y}] $\endgroup$ – Michael E2 Jan 14 at 3:48
2
$\begingroup$
PlotLabel -> ToString[x] <> "/" <> ToString[y],

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.