1
$\begingroup$

In order to describe the associated issues please see code sample below. The code presented is a simplified to include only whats needed as to better communicate the problems at hand.

Following code creates a sample data set to be used for visualization purposes:

(*Simulated data*)
f = RandomReal[{1*10^-5, 1*10^-3}, 20];
q = RandomReal[{4, 20}, 20];

After variables f and q have been set, the data is preprocess and posprocess to retrieve the necessary information:

(*Process data*)
preprocess = Sort@Transpose[{q, f}];
posprocess = Reverse@Accumulate@Reverse@preprocess[[All, 2]];

Given the above steps have been carried out, complete data set is generated below:

(*Data*)
complete  = Table[AppendTo[preprocess[[i]], posprocess[[i]]],{i,Length@posprocess}]; 

In order to visualise the above, I was looking to develop an interface which would include three Column's containing the information held within complete data set. Additionally, in a Row form, the second Item was meant to be a ListLogPlot[list]. Following is the code of the implementation:

(*Output*)
Framed@Row[{
   Pane[
    Grid[{
      Style[#, Bold, Darker[Blue], "Courier", 16] & /@ {"q'", "f", 
        "\[CapitalSigma]f"},
      Column[#, Center] & /@ ScientificForm@# & /@ 
       Table[complete[[All, i]], {i, 3}]
      }],
    Scrollbars -> {False, True}, ImageSize -> {320, 300}
    ],
   ListLogPlot[complete[[All, 3]],
    AxesLabel -> Style[#, Bold, 12] & /@ {"\[CapitalSigma]f", "q'"},
    PlotRange -> {#@complete[[All, 1]] & /@ {Min, Max}, Automatic},
    ImageSize -> {500, 320}]
   }]

The above code works and produces the interface which I hoped to implement. However, there is a set of issues releted to the above implementation which I hope someone could assist to resolve:

  1. When applying ScientificForm, the content of the columns becomes misaligned. This can be reproduced by increasing the sample space (Ex. 20)
  2. AxesLabel does not display label for 'X' axis
  3. PlotRange does not display all data points. This can be reproduced by reducing the sample space (Ex. 5)
  4. With small sample space (Ex. 5), clicking on Scroolbar makes Column data disapear

Comments and suggestions relevent to the above subject matter are welcome. Ideally, I am looking to resolve the identified issues or receive pointers towards the documentations which could assist in doing so.

$\endgroup$

closed as off-topic by Mike Honeychurch, Dr. belisarius, user9660, dr.blochwave, m_goldberg Nov 24 '15 at 19:26

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question arises due to a simple mistake such as a trivial syntax error, incorrect capitalization, spelling mistake, or other typographical error and is unlikely to help any future visitors, or else it is easily found in the documentation." – Mike Honeychurch, Dr. belisarius, Community, dr.blochwave, m_goldberg
If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ Could someone please elaborate on the reason why question has been down-voted and voted for close? I'd appreciate feedback so I can improve quality of my questions in future. $\endgroup$ – e.doroskevic Nov 23 '15 at 22:46
  • $\begingroup$ I didn't down vote but I voted to close because the problems are readily solved by consulting the documentation and the numerous examples therein $\endgroup$ – Mike Honeychurch Nov 24 '15 at 2:05
  • $\begingroup$ @MikeHoneychurch your comment is valuable. I did consult documentation and searched forum before posting a question. I will make sure to spend more time on the available resources in future! $\endgroup$ – e.doroskevic Nov 24 '15 at 9:06
3
$\begingroup$
grid =
 Grid[Prepend[complete, 
    Style[#, Bold, Darker[Blue], "Courier", 16] & /@ {"q'", "f", "\[CapitalSigma]f"}],
   Alignment -> Right] /. x_Real /; x < 1 :> ScientificForm@x;

plot =
 ListLogPlot[
  complete[[All, 3]],
  AxesLabel -> (Style[#, Bold, 12] & /@ {"\[CapitalSigma]f", "q'"}),
  PlotRange -> All,
  ImageSize -> {500, 320}];

Framed@Row[{
   Pane[
    grid,
    Scrollbars -> {False, True},
    ImageSize -> {320, 300}],
   plot}]

enter image description here

$\endgroup$
2
$\begingroup$

Re. 2 Use this:

AxesLabel -> (Style[#, Bold, 12] & /@ {"\[CapitalSigma]f", "q'"})

or

AxesLabel -> Map[Style[#, Bold, 12] &, {"\[CapitalSigma]f", "q'"}]

This requirement for this can be found by double-clicking twice on the original Style which will show that the rule take precedence over the map.

$\endgroup$
2
$\begingroup$
  1. Use Alignment -> {Left, Top} within Grid and Column

  2. Use AxesLabel->{Style["\[CapitalSigma]f", Bold, 12], Style["q'", Bold, 12]} explicitly

  3. Use PlotRange -> All

  4. same as #1

Some quick changes that can help:

Framed@Column[{
   Pane[
    Grid[
     Join[{Style[#, Bold, Darker[Blue], "Courier", 16] & /@ {"q'", 
         "f", "\[CapitalSigma]f"}},
      Map[ScientificForm, complete, {2}]
      ],
     Alignment -> {Left, Top}],
    Scrollbars -> {False, True}, ImageSize -> {320, 300}, 
    Alignment -> {Left, Top}], 
   ListLogPlot[complete[[All, 3]], 
    AxesLabel -> {Style["\[CapitalSigma]f", Bold, 12], 
      Style["q'", Bold, 12]}, PlotRange -> All, 
    ImageSize -> {500, 320}]}]
$\endgroup$

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