02-13-2022 10:54 AM
@Sebbastiannn wrote:
You are generating 2D data. How exactly do you want them plotted?I have read that I then need to convert the data into a cluster of the X and Y array data. how would that work for me? I'm afraid I'm lost on this one
XY graphs accept a variety of data types (cluster of xy points, cluster of x and y arrays, complex array, etc. I showed you the complex version, which is often cleaner, IMHO.
In your earlier example, you are generating gridded data in a stack of two loops and for each X1 value in the outer loop you sweep over an ramp of X2 values in the inner loop where you additionally add two random numbers (Y1, Y2). It is not clear at all how you want to graph this!
(For example with only one Y, you could use an intensity graph where the pixels and located at X1, X2 and the color (z scale) represents Y)
What does the data represent? can you explain the experiment in a bit more detail?
02-13-2022 12:37 PM - edited 02-13-2022 12:39 PM
Okay as roughly speaking it is a 6 point measurement on a 3 contact tandem solar cell.
So actually it is two 4 point measurements where 2 measurement points overlap (so one contact has 4 measurement pins instead of two) 🙂
Which is why we get two data (voltage, current for A) for the first 4 point measurement and 2 (voltage, current for B) for the other:)
While we apply a constant voltage to one contact (with Channel B), the other one goes through all voltage steps (Channel A). So the inner loop.
But since the measurements are connected to each other, when we increase the voltage in channel A, not only the current of channel A changes, but also the current of channel B. So everytime we perform the inner loop, we have to measure both channels. (is a bit crazy I know 😄 ). Thereby 4 measurement data are produced Channel A (voltage and current density) and Channel B (voltage and current density). When the first run of channel A is finished, the voltage of channel B goes to the next voltage value and channel A starts from the beginning and both Channels are measured. So you would get a data block like here in the picture (the random numbers are in this case the current density values):
In the example I sent, the two stepsizes are the voltage and the random numbers are the current density.
So in principle, as in the sent VI, the 4 data block is sent down and should be divided into 2 for channel A and B and then plotted as a graph.
Where we would then have that:
1. graph for A have values with (x-axis = voltage, y-axis = current density).
2. graph for B have values with (x-axis = voltage, y-axis = current density)
Whereas the graph for Channel A would probably be filled with such lines:
And the graph for Channel B is probably something like this, because the x value stays the same but the current changes:
@altenbach wrote:
In your earlier example, you are generating gridded data in a stack of two loops and for each X1 value in the outer loop you sweep over an ramp of X2 values in the inner loop where you additionally add two random numbers (Y1, Y2). It is not clear at all how you want to graph this!
(For example with only one Y, you could use an intensity graph where the pixels and located at X1, X2 and the color (z scale) represents Y)
What does the data represent? can you explain the experiment in a bit more detail?
So yes the Channel B Voltage would be the same but different current density. However as it will always give out a 4 data block.
like
(Voltage A, Current A, Voltage B, Current B)
(Voltage A, Current A, Voltage B, Current B)
(voltage A, current A, voltage B, current B)
...
it should be possible to plot it
02-13-2022 01:02 PM - edited 02-13-2022 01:06 PM
It currently looks like this what I got out.
What is stupid are the connecting lines between the vertical lines at channel B and the missing different colors especially at A this is fatal.
Of course this is an absolute nonsense that comes out at A by the random numbers haha
at the end of the day the channel A data will be Diode characteristics lines.
would probably look like this:
02-13-2022 01:05 PM
You can insert one point with NaN to eliminate the connecting lines between segments. You can also create separate plots for each segment.
02-13-2022 01:12 PM - edited 02-13-2022 01:16 PM
But the data block I'm transferring doesn't know any segments :0 so I don't know how to separate it with my limited knowledge in clusters and arrays.
@altenbach wrote:
You can insert one point with NaN to eliminate the connecting lines between segments. You can also create separate plots for each segment.
I will try something out maybe it works, maybe not:D
02-13-2022 01:26 PM
@altenbach wrote:
Here's the NaN idea for plots with incomplete data mentioned earlier.
(I change the points style for each plot because using the default style you cannot see the first point. There are some other subtleties, e.g. we need to ensure that the plot actually exists before we set the active plot)
okay i must say i thought it would be easy to adapt it to my circumstances. This is the closest to what I need, if the X axis was the second value and not the time I think it would be the solution. However, I can't integrated it into my programm 😐
02-13-2022 03:30 PM - edited 02-13-2022 03:32 PM
@altenbach
I finally got it with the NaN + i0 format you recommended:) I would never have thought of it.
I still wonder what these fields do to the graph because when I delete them the graph looks the same. so i doesnt matter to have them? but they look really important
Now I just have to save the data into a txt file 🙂
I will send you a suggestion Vi tomorrow! It would be awesome if you could also send me your opinion on this or improvements!
I thank you very much for your help 🙂