Increasing Legibility of Legend Lines in Mathematica

In summary, when you're trying to put the legend in the plot, you need to put the quotes around the whole thing, including the brackets, to make it read as text rather than input.
  • #1
8
0
Hi, can anyone tell me, how to make the lines in a legend more legible (or larger)?

When I am making a legend, the colored lines are too faint, so that I can't see what they refer to.

Thank you,
Juliane
 
Physics news on Phys.org
  • #2
Can you post a sample of the legend you're trying to make?

Code:
Needs["PlotLegends`"];Plot[{Sin[x], Cos[x]}, {x, 0, 2 Pi}, PlotLegend -> {"sine", "cosine"}]
Gives a plot with a legend built in, but you can also make your own.

Code:
LGN = Show[
  Graphics[Legend[{{Graphics[{Thick, Purple, Line[{{0, 0}, {1, 0}}]}],
       "sin"}, {Graphics[{Thick, Red, Line[{{0, 0}, {1, 0}}]}], 
      "cos"}}]]]

And just do a bunch of editing to make it look how you want.

By default the legend of the plot is the same line as the one drawn in the plot, and I don't see any directives to change that. But making it yourself you can specify the thickness.

Or you can just change the thickness of the lines on the plot itself and that will be reflected in the legend.
 
Last edited:
  • #3
Here is the plot I want to make:
L[x_] := (1/
2) (BesselI[0, 2 x] + BesselI[2, 2 x])/(BesselI[1,
2 x]) - (1/(2 x))
L0[x_] := (1/
2) (BesselI[0, x] BesselI[1, x] -
BesselI[-1, x] BesselI[2, x])/((BesselI[0, x])^2 -
BesselI[1, x] BesselI[-1, x])
L1[x_] := (1/
2) (BesselI[1, x] BesselI[2, x] -
BesselI[0, x] BesselI[3, x])/((BesselI[1, x])^2 -
BesselI[2, x] BesselI[0, x]) + (1/x)
L2[x_] := (1/
2) (BesselI[2, x] BesselI[3, x] -
BesselI[1, x] BesselI[4, x])/((BesselI[2, x])^2 -
BesselI[3, x] BesselI[1, x]) + (2/x)
Needs["PlotLegends`"]
Plot[Evaluate[{L[x], L0[x], L1[x], L2[x]}], {x, 0, 10},
PlotRange -> {0, 1.4}, Frame -> True,
FrameLabel -> {Style[OverHat[m], 12, FontWeight -> "Bold"],
Style[Subscript[AngleBracket[\[Psi]\[Psi]], \[Nu]], 12,
FontWeight -> "Bold"]},
PlotStyle -> {{Blue, Dashing[0], Thickness[0.0029]}, {Darker[Purple],
Dashing[0.015], Thickness[0.0029]}, {Darker[Red], Dashing[0.01],
Thickness[0.0029]}, {Darker[Green], Dashing[0.03],
Thickness[0.0029]}}, BaseStyle -> {FontSize -> 10},
PlotLegend -> {Style[\[LeftAngleBracket]\[Psi]\[Psi]\
\[RightAngleBracket], 10, FontWeight -> "Bold"],
Style["\[Nu]=0", 10, FontWeight -> "Bold"],
Style["\[Nu]=1", 10, FontWeight -> "Bold"],
Style["\[Nu]=2", 10, FontWeight -> "Bold"]},
LegendPosition -> {0.9, -0.4}, LegendTextSpace -> .8,
LegendShadow -> {.05, -.05}, LegendSize -> 1]

The Legend-lines do not get any larger when I increase the thickness (in what stands above).
Could you also tell me how to make an overline on the first Psi in "AngleBracket[\[Psi]\[Psi]]". No matter what I do, the overline keeps coming on the second Psi.

Thank you so much,
Juliane
 
  • #4
I'll take a look.

Right off the bat to put the bar over the first psi put quotes around the whole thing, including the brackets : "<sbar s>" and itll put it on the correct one. If you don't it applies order of operations on it and alphabetically I guess the bar comes after non bar.
 
  • #5
Hi, when I write this: "<sbar s>", mathematica writes "bar" on top of the letter - it doesn't draw a line??
 
  • #6
I didn't mean it literally. I mean where you have :

PlotLegend -> {Style[\[LeftAngleBracket]\[Psi]\[Psi]\
\[RightAngleBracket], 10, FontWeight -> "Bold"],

USE

PlotLegend -> {Style["\[LeftAngleBracket]\[Psi]\[Psi]\
\[RightAngleBracket]", 10, FontWeight -> "Bold"],

notice the quotes I added.
 
  • #7
But there is no overbar in what you write??
Sorry I don't understand you.
 
  • #8
ah sorry.

"\[LeftAngleBracket]\!\(\*OverscriptBox[\"\[Psi]\", \"_\"]\)\[Psi]\
\[RightAngleBracket]"
 
  • #9
its the quotes that forces it to be read as text rather than input. input will normally be ordered alphabetically.
 
  • #10
Thank you so much.

I'm handing in my master thesis tomorrow - could you please tell me, how to incorporate the legend (LGN=...) in the plot?

Once again, thank you.
 

1. How can I change the font size of legend lines in Mathematica?

To change the font size of legend lines in Mathematica, you can use the FontSize option in the PlotLegends function. For example: PlotLegends->{"legend1", "legend2", "legend3"}, FontSize->12 will set the font size of all legend lines to 12 points.

2. Can I customize the appearance of legend lines in Mathematica?

Yes, you can customize the appearance of legend lines in Mathematica using the various options available in the PlotLegends function. These options include FontFamily, FontColor, LabelStyle, and more.

3. How can I change the color of legend lines in Mathematica?

To change the color of legend lines in Mathematica, you can use the LineLegend function and specify the desired color using the LegendMarkerSize option. For example: LineLegend[{"legend1", "legend2", "legend3"}, LegendMarkerSize->10, LegendMarkers->{"\[FilledCircle]", "\[FilledSquare]", "\[FilledDiamond]"}] will create legend lines with different colors and shapes.

4. How can I make the legend lines thicker in Mathematica?

To make the legend lines thicker in Mathematica, you can use the LegendMarkerSize option in the PlotLegends function. For example: PlotLegends->{"legend1", "legend2", "legend3"}, LegendMarkerSize->10 will make the legend lines 10 points thick.

5. Is it possible to add a border around legend lines in Mathematica?

Yes, you can add a border around legend lines in Mathematica by using the LegendMarkerSize and LegendMarkerLayout options in the PlotLegends function. For example: PlotLegends->{"legend1", "legend2", "legend3"}, LegendMarkerSize->10, LegendMarkerLayout->{"\[FilledCircle]", EdgeForm[{Thick, Black}]} will create legend lines with a thick black border.

Suggested for: Increasing Legibility of Legend Lines in Mathematica

Replies
4
Views
309
Replies
1
Views
1K
Replies
1
Views
78
Replies
1
Views
923
Replies
1
Views
1K
Replies
2
Views
1K
Back
Top