# Re: [Scilab-users] Fwd: plotxxyyy

```Hallo Frieder,
If you insert

plot(x(M),y(M),'go')```
```
after

//Writing measurement numbers

you get circle marks at the selected points to ease their correlation to the
measurement number.

Kind regards
Jens
-----------------------------------------------------------

Am 12.10.2016 18:16, schrieb Jens Simon Strom:
```
```Hallo Frieder,
```
You can independently combine stack and skip of the measurement numbers by the code below.
```//Plotting measurement numbers with optional gaps and optional stacking to
avoid overlapping
//Generating dummy measurement data x,y and plotting them
dx=0.5:50;// increment of x
x=cumsum(dx);
y=sind(x);
yspan=max(y)-min(y);
nM=length(x);//number of measurements
xdel();
plot(x,y,'r')
plot(x,y,'b+')

//Input parameters for plotting the measurement numbers with optional gaps and
stacking to avoid overlapping
nstack=6;//maximum number of stacked measurement numbers
hstack=0.1;//height of measurement number stack (relative to span). hstack=0:
no stacking independent of nstack
ybase=-1;  //base ordinate for measurement numbers
step=2;// step=1: no gap, step=2: every second measurement number, etc.

//Writing measurement numbers
M=1:step:nM;//opted measurement numbers
```
for m=1:length(M) xstring(x(M(m)),ybase+(modulo(M(m),nstack))*hstack*yspan/nstack,string(M(m)))
```end

"How can I move the lettering above the plot (or at least to the bottom, next to the
x-axis)?"
By data_bounds (see axes_properties in the help pages) you can enlarge the
y-axis beyond the y data span at will.The y-level of the lettering is
controlled by the input variable 'ybase' (see code above).

Kind regards
Jens
---------------------------------------------------------------------------------------------------------------------------------

Am 12.10.2016 14:01, schrieb Frieder Nikolaisen:
```
```
Hello everybody,

I did solve the Problem with showing only 10 line numbers, by using IF.

printer=1
for  k=1:A_size(1,1)                              //Beschriftung
```
*if k>A_size(1,1)*(printer/10) then* printer = printer + 1 xstring(x(k),y3(1),string(k)) // xstring(x,y,str,[angle,[box]]) end set(handles.Anzeige, 'string', 'Diagrammbeschriftung' + string(k) + ' von' + string(A_size(1,1)))
```end
```
The line numbering is connected to the y-axis. How can I move the lattering aboth the plot (or at least the bottom, next to the x-axis)? (attached plot: subplot_with_line_number_2_tenth.gif) About Jens help:
```I attached three plots: the stacks Picture are with the Code of Jens. Stacking
is really nice, but I do not need every line number. With 921 data Points, it
learningn anyway.
```
Cheers
```Frieder

On 2016-10-12 11:48, Jens Simon Strom wrote:

```
```Hello Frieder,
```
Your plots look better now. You can avoid overlapping of measurement numbers by sawtooth stacking them. See example code below.
```xdel();
//Generating dummy measurements x,y
dx=0.5:50;
x=cumsum(dx);
y=sind(x);
nM=length(x);//number of measurements
plot(x,y,'r')
plot(x,y,'b+')
//Plotting the measurement numbers in stacks to avoid overlapping
nstack=6;//number of stacked measurement numbers
hstack=0.2;//height of measurement number stack (relative to window height)
ybase=-0.9;  //base ordinate for measurement numbers
yspan=max(y)-min(y);
for  m=1:nM//measurement number
xstring(x(m),ybase+(modulo(m,nstack)-1)*hstack*yspan/nstack,string(m))
end
Kind regards
Jens
------------------------------------------------------------------------------------------------------------------------------
Am 12.10.2016 10:52, schrieb Frieder Nikolaisen:
```
```
Hello,

thank you for all the feedback and help. It's really great.

```
I used the idea of Jens Simon Strom combined with some help from last week:
```
//Datensätze
x1  =  (A(:,1)  -  A(1,1))  *  24  *  3600;
y1  =  A(:,y_1);
y2  =  A(:,y_2);
y3  =  A(:,y_3);
drawlater()

subplot(3,  1,  1)
```
co = color("green"); plot2d(x1, y1, co);
```a  =  gca();
```
b.font_color = co; a.foreground = co;
```ylabel(string(kT(y_1)),"color",co)
a.x_location  =  'top';

subplot(3,  1,  2)
```
co = color("blue"); plot2d(x1, y2, co);
```b  =  gca();
```
b.font_color = co; b.foreground = co;
```ylabel(string(kT(y_2)),"color",co)
```
b.axes_visible(1) = "off"; //b.marings = [0.1 0.1 0.3 0.5];
```//b.filled ="off";
subplot(3,  1,  3)
co=color("red");
```
plot2d(x1, y3, co); c = gca(); c.font_color = co; c.foreground = co; //c.axes_visible(1) ="off";
```ylabel(string(kT(y_3)),"color",co)
//xlabel(string('Zeit [Sekunden]'), co)
x=  (A(:,1)  -  A(1,1))  *  24  *  3600;
for  k=1:A_size(1,1)   //Beschriftung
xstring(x(k),x(1),string(k))         // x(1) always 0
// xstring(x,y,str,[angle,[box]])
disp(x(1))
end
//c.marings = [0.1 0.1 0.5 0.3];
//c.filled ="off";

drawnow()
```
The printed plots are attached. I did plot different paramters, as I can choose then in my GUI.
```That works well:

* Three plots, having the same x axis.
* x axis on the top and bottom
* Line *numbers Fitting the x axis*.

That does not work:

* showing a *few line numbers* only, for reading (best case:
Fitting the automatic shown times in sec

```
Problem: I cannot tell, how many datapoints there are going to be. So it mus be choosen automaticly.
```
Best regards

Frieder

On 2016-10-11 21:04, Samuel Gougeon wrote:

Hello,

Le 11/10/2016 14:46, Rafael Guerra a écrit :

Hi,

I was not able to follow the whole discussion

Neither did i,

second x-axis in a subplot by newaxis(). How to add a
x-axis by using subplot?/"and your last example,

Couldn't you add a 4^th subplot at the bottom in order to
plot the 2^nd x-axis (say by plotting only zeros)?

.
Why not using drawaxis() as already suggested? drawaxis() is
made for this kind of situation.
In this thread, no logarithmic axis is involved. So i do to
catch the reason of ignoring drawaxis().

By the way, IMO, a drawing of what exactly is required would be
clearer than hundred of lines of description, with schematic
curves, axes, arrows linking curves to their multiple axes in x
and y.

BR
Samuel Gougeon

_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users
```
```

_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users
```
```
```
```
```
```_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users
```