How to extract data from a plot (figure)
Mostrar comentarios más antiguos
Hello!
I am trying to extract the data in my figure, when it gets "true" or "false". For example, the image below has a true at 0.4159 and a false at 0.9795. How can I extract this (can be through a script) to get these point all over the plot?
Thank you in advance!

5 comentarios
Mischa Kim
el 8 de En. de 2021
How did you create the plot?
Gustavo Araujo
el 8 de En. de 2021
Mathieu NOE
el 8 de En. de 2021
hello
the simple code below will give you the x data indexes when above or below a threshold
istrue = find(Fault.signals.values>0.5)
isfalse = find(Fault.signals.values<1e-3)
if you are interested in finding the rising and falling transition index , time and output values, you can use the attached function
level = 0.5;
[ind_pos,t0_pos,s0_pos,ind_neg,t0_neg,s0_neg] = crossing_V7(Fault.signals.values,Fault.time,level,'linear')
Gustavo Araujo
el 8 de En. de 2021
Mathieu NOE
el 11 de En. de 2021
hello Gustavo
glad it meets your needs
you can create your own function that use's the crossing function I sent you (call it inside your own function and pass the arguments).
Respuestas (1)
Cris LaPierre
el 8 de En. de 2021
0 votos
You would process the data used to create the plot, not the plot itself. Look at your plot and see if you can identify some characteristic you could use to detect when the signal switches to true and when it switches to false.
I would probably try something using diff(Fault.signals.values), since a change of +1 indicates a switch from False to True, while a change of -1 indicates a switch from True to False.
Categorías
Más información sobre Creating, Deleting, and Querying Graphics Objects en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!