I have a set of data I want to plot using a line chart, and a secondary column of data that is the calculated limits of the data.
When I use 'Line from Column Data' in the Lines and Curves property, the limits column line will display fine as long as my x-axis is in linear scale.
When I want to swap to log scale (this is audio data) the limits column line is no longer visible. The data does not need to be updated for log since my y-axis is unchanged and the x-axis for the test data and the limits data is the same.
What am I doing wrong?
I experienced the same issue. I was able to get the line to plot though if I made a calculated column taking the log of the line plotting through the 'Line from Column Data', e.g. Log10([Column]) and use that column in the 'Line from Column Data'.
You can include two lines generated from the 'Line from Column Data', one for the linear y-axis with the original column and one for the log y-axis with the log10 calculated column and then you'll have the line you need regardless of which y-axis you use.
Related
On a data/line plot inside Excel, I'd like to color my data points depending on a value inside the table on the same row as the data value, however from a different column.
It's best explained with a picture:
It's essentially a line chart type with the lines removed, and the data points set to bullet type and given an increased radius for visibility. The x-axis denotes the calendar date as dd.mm, and the y-axis contains the values.
Now the Excel table also contains a row called "Time of Day", which can be mo(rning), mi(dday), ev(ening).
Can something like this be done with a line chart, or do I need to use a different type of chart, or is this generally not possible in Excel (which I doubt)?
Excel in use is: Microsoft Excel for Mac, Version 16.51 (21071101).
Here's a way to achieve this:
What I've done is:
Added three columns for the times of day (columns B, C and D). These can be hidden.
Added this formula in B2: =IF($E2=B$1,$F2,NA()) which should then be dragged to cover the next two columns and then down to cover every day.
Selected A1:D11 (it'll be more than 11 on your version)
Went to Insert > Chart > Insert Line or Area Chart > Line With Markers
At this point you have a line chart with three series (mo, mi, ev). The lines can be removed, which just leaves the markers. You can format each series separately, with different colours, shapes, sizes, etc.
As a special bonus, this automatically gives you a legend that explains the colours.
Below is the average time taken for a robot to process a single request on any given day. I am trying to plot this on an excel chart but I am having trouble formatting. I want the date on the x axis and the processing time on the y axis. Any advice would be appreciated.
11/23/2017 0:02:40
11/24/2017 0:02:33
11/25/2017 0:02:54
11/26/2017 0:02:50
11/27/2017 0:03:01
11/28/2017 0:02:42
11/29/2017 0:03:07
11/30/2017 0:02:42
12/1/2017 0:02:55
Create a line chart. With the data in two columns, make sure there is a header row. Delete any content in the date header, so the cell is blank. If there is text in the column header, Excel will try to plot the dates as numbers, and that is not what you want.
Click any cell in the table and insert a line chart. By default, if Excel recognizes a date for the X axis values, it will plot the data on a timeline. In the screenshot, notice that there is a gap of a few days and the chart plots the data correctly per day.
I want to create a line chart from a table where I do no have all the data.
Moreover, I need that the x-axis uses the values in the first row, which are not continue. This table shows a short part of the whole data:
The first row is the x-axis and the remaining rows correspond to the lines in the chart.
How should I proceed in order to ignore the gaps, and each line was drawn taking only into account the available data?
To ignore gaps and create a continuous line
Right Click Chart > Click 'Hidden and Empty Cells' > Select Option 'Connect Data points with line'
I have 2 data series, which records how much a user is meditating/attentive (out of 100) plotted onto a graph. The x axis is the number of seconds since the start of the experiment, and the y axis shows the value for meditation/attention at that point of time.
I have a 3rd set of data that is a series of key timestamps during the experiment (not exactly matching the timestamps from attention/meditation values).
I want to create a graph where you can compare how the attention/meditation values change at the key points
Whether the key points are highlighted by a line or dots I don't care. I tried adding the 3rd data set as a secondary axis, but it still uses the original x-axis of the main graph and I don't know how to make excel do what I want.
Thanks in advance
You should use an XY Scatter chart, not a line chart. A line chart ignores any numerical value in the X values, treats each X value as a text label, and uses the X values from the first series as X values for all series.
You can format the first two series so that they use lines and not markers, and the third so it uses markers without lines.
You may find this link helpful: superuser.com/questions/825692 You don't need to use the secondary axis, just add another series with tag times and constant 45 value, then format vertical error bars to 100% and horizontal to 0%.
I am trying to plot a family of curves in space using gnuplot.
I am trying to do it with for-loops. The data are in 4 columns, and every 20 rows, a new plot starts, e.g., if I do a plot using the 3 and 4 columns, on the row 21, the index in the third column starts again, and the number on the second column increases by one. This pattern repeats, and every 320 rows, the index on the first column increases by one, and all the pattern repeats itself again.
The index in the first column goes from 2.0 to 3.8 whereas the index on the second column goes from 75 to 90.
In my code I tried to set the range limits from 1.8 to 4.2 for one axis, and from 0 to 100 for the second axis.
I wrote the following code
a=0 # this variable indicates how many rows to skip
do for [j=20:38:1]{ # loop for the first column
do for [i=75:90:1]{ # loop for the second column #
splot [1.8:4.2][1:101] "dataforgnuplot" every ::a::a+19 u 1:3:4
w lines title sprintf("%3.2f %3.2f",j/10.0, i);
a=a+20;
}
}
and it generates one curve at a time, but the previous one disappears, I had a look at multiplot, and also was trying with replot, but, I still haven't found how to do that.
You should approach this differently. If you put blank lines in your input file in the right places, and plot the whole file, gnuplot will know exactly when to stop drawing one curve and start the next one.
From the gnuplot documentation:
Single blank records designate discontinuities in a plot; no line will join points separated by a blank records (if they are plotted with a line style).
Two blank records in a row indicate a break between separate data sets. See index (p. 79).
The difference between the two cases is that separate curves which are part of the same data set (one blank line) will be plotted in the same color and with a single entry in the legend. Different data sets will have different colors and separate labels.
It should be easy to change the program which outputs this data if you have control over it, to add the extra blank lines. If you don't control it, a one-or-two-line script should be able to insert the blank lines, either based on the line counts you gave, or by checking the first and second data records.