Wolfram mathematica 匹配图例和绘图大小 请考虑: intense = Reverse[Round[Rationalize /@ N[10^Range[0, 3, 1/3]]]]; values = Range[0, 9/10, 1/10]; intensityLegend = Column[Prepend[MapThread[ Function[{intensity, values}, Row[{Graphics[{(Lighter[Blue, values]), Rectangle[{0, 0}, {4, 1}], Black, Text[Style[ToString[intensity], 16, Bold], {2, .5}]}]}]], {intense, values}], Text[Style["Photons Number", Bold, 15]]]]; IntersectionDp1={{1., 588.377}, {2.15443, 580.306}, {4.64159, 573.466}, {10.,560.664}, {21.5443, 552.031}, {46.4159, 547.57}, {100.,545.051}, {215.443, 543.578}, {464.159, 542.281}, {1000., 541.346}} FindD1=ListLogLinearPlot[Map[List, IntersectionDp1], Frame -> True, AxesOrigin -> {-1, 0}, PlotMarkers -> With[{markerSize = 0.04}, {Graphics[{Lighter[Blue, #], Disk[]}], markerSize} & /@Range[9/10, 0, -1/10]], Filling -> Axis, FillingStyle -> Opacity[0.8], PlotRange -> {{.5, 1100}, {540, 600}}, ImageSize->400]; Grid[{{intensityLegend, FindD1}, {intensityLegend, FindD1}}, ItemSize -> {50, 20}, Frame -> True]
如何使图例列大小适合绘图区域的高度?Wolfram mathematica 匹配图例和绘图大小 请考虑: intense = Reverse[Round[Rationalize /@ N[10^Range[0, 3, 1/3]]]]; values = Range[0, 9/10, 1/10]; intensityLegend = Column[Prepend[MapThread[ Function[{intensity, values}, Row[{Graphics[{(Lighter[Blue, values]), Rectangle[{0, 0}, {4, 1}], Black, Text[Style[ToString[intensity], 16, Bold], {2, .5}]}]}]], {intense, values}], Text[Style["Photons Number", Bold, 15]]]]; IntersectionDp1={{1., 588.377}, {2.15443, 580.306}, {4.64159, 573.466}, {10.,560.664}, {21.5443, 552.031}, {46.4159, 547.57}, {100.,545.051}, {215.443, 543.578}, {464.159, 542.281}, {1000., 541.346}} FindD1=ListLogLinearPlot[Map[List, IntersectionDp1], Frame -> True, AxesOrigin -> {-1, 0}, PlotMarkers -> With[{markerSize = 0.04}, {Graphics[{Lighter[Blue, #], Disk[]}], markerSize} & /@Range[9/10, 0, -1/10]], Filling -> Axis, FillingStyle -> Opacity[0.8], PlotRange -> {{.5, 1100}, {540, 600}}, ImageSize->400]; Grid[{{intensityLegend, FindD1}, {intensityLegend, FindD1}}, ItemSize -> {50, 20}, Frame -> True],wolfram-mathematica,plot,mathematica-8,Wolfram Mathematica,Plot,Mathematica 8,如何使图例列大小适合绘图区域的高度? 当行调整大小时,我需要使用网格。这就是我在网格中复制的原因。将图例缩小一点怎么样 intensityLegend = Column[Prepend[ MapThread[ Function[{intensity, values}, Row[{Graphics[{(Lighter[Blue, values]), Rectangle[{0, 0}, {4, 1}], Black,
当行调整大小时,我需要使用网格。这就是我在网格中复制的原因。将图例缩小一点怎么样
intensityLegend =
Column[Prepend[
MapThread[
Function[{intensity, values},
Row[{Graphics[{(Lighter[Blue, values]),
Rectangle[{0, 0}, {4, 1}], Black,
Text[Style[ToString[intensity], 12, Bold], {2, .5}]},
ImageSize -> 50]}]], {intense, values}],
Text[Style["Photons Number", Bold, 15]]]];
处理图像大小。(*非常感谢!但我必须承认,我还不能掌握任何单位或比例:-),所以它仍然是神奇的。我希望我们总是谈论像素在所有情况下!你能解释一下下面的部分吗?我认为它会有条件地根据情节本身调整图例的y大小,但我不理解这一部分:IntegerPart@First[imgSize Cases[AbsoluteOptions[FindD1],HoldPattern[AspectRatio->x\uz]>x]]
intense = Reverse[Round[Rationalize /@ N[10^Range[0, 3, 1/3]]]];
values = Range[0, 9/10, 1/10];
imgSize = 400; (* <- *)
Off[Ticks::ticks]
IntersectionDp1 = {{1., 588.377}, {2.15443, 580.306}, {4.64159, 573.466},
{10., 560.664}, {21.5443, 552.031}, {46.4159, 547.57}, {100., 545.051},
{215.443, 543.578}, {464.159, 542.281}, {1000., 541.346}}
FindD1 = ListLogLinearPlot[Map[List, IntersectionDp1], Frame -> True,
AxesOrigin -> {-1, 0},
PlotMarkers ->
With[{markerSize = 0.04},
{Graphics[{Lighter[Blue, #], Disk[]}], markerSize} &
/@ Range[9/10, 0, -1/10]], Filling -> Axis, FillingStyle -> Opacity[0.8],
PlotRange -> {{.5, 1100}, {540, 600}}, ImageSize -> imgSize]; (* <- *)
intensityLegend =
Rasterize[Column[
Prepend[
Reverse@MapThread[ (* <- *)
Function[{intensity, values},
Row[{Graphics[{(Lighter[Blue, values]),
Rectangle[{0, 0}, {4, 1}], Black,
Text[Style[ToString[intensity], 30, Bold], {2, .5}]}]}]],
{intense, values}],
Text[Style["Photons Number", Bold, 25]]]],
ImageSize -> {Automatic, (* <- *)
IntegerPart@
First[imgSize Cases[AbsoluteOptions[FindD1],
HoldPattern[AspectRatio -> x_] -> x]]}];
Grid[{{intensityLegend, FindD1}, {intensityLegend, FindD1}}, Frame -> True]
ImageSize -> {Automatic, (* <- *)
IntegerPart@
First[imgSize Cases[AbsoluteOptions[FindD1],
HoldPattern[AspectRatio -> x_] -> x]]}];
ImageSize -> {Automatic, Last@AbsoluteOptions[FindD1,"ImageSize"]}
AbsoluteOptions[FindD1]
AbsoluteOptions[FindD1,"AspectRatio"]