5
$\begingroup$

I am using Caprio's SciDraw package to draw some figures for publication. However I found that all the frames given by this package are not closed, even for the figure frames on the website https://scidraw.nd.edu/: See the circled region! Frame not closed

But the frames provided by Mathematica (e.g. Plot[Sin[x],{x,0,2Pi},Frame->True]) are totally closed.

So, What methods can I use to achieve a perfect frame in SciDraw? Thanks!

$\endgroup$
2
  • 1
    $\begingroup$ Welcome to Mathematica StackExchange! I am not a user of SciDraw, but I believe this is due to the CapForm being set to None. What if you do Figure[...] /. CapForm[__] :> CapForm["Square"]? Does it fix the issue? It might need some additional tweaking so that it is applied only to the axes ... $\endgroup$
    – Domen
    Commented Jun 26 at 12:16
  • 1
    $\begingroup$ @Domen Problem solved perfectly! So far I haven't found any side effects. Thank you so much and I feel love this place now :) $\endgroup$
    – T qenb
    Commented Jun 26 at 12:28

1 Answer 1

5
$\begingroup$

I am not a user of SciDraw, but I believe this is due to the CapForm being set to None.

As a simple, poor man's solution, you can use

Figure[...] /. CapForm[__] :> CapForm["Square"]

This will change all cap forms of the objects in the graphics. This may be unwanted in some cases. As you've figured it out yourself, there is actally an option to change the cap form only for the frame.

FigurePanel[..., LineCapForm -> "Square"]
$\endgroup$
1
  • $\begingroup$ I find that the capform of frame can be adjusted by the FigurePanel option LineCapForm->"Square" or LineCapForm->"Round". Since this option is to change the form of "outline" of an object, according to the manual of the package, I think the change is applied only to the frame. Thank you again! $\endgroup$
    – T qenb
    Commented Jun 26 at 13:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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