How do I stop data being rounded when plotting a graph with 2 y-axis?

I have 2 sets of data, both of which are sine waves. The sine waves are slightly out of phase, and I'm trying to plot them so they're in phase so I can compare them. To do this I'm effectively ignoring the first 100us of data for the output wave, and also ignoring the last 100us of the input wave. When I do this, it looks like this:
Both.png
As you can see the orange value is being rounded to some discrete values, rather than being a perfect sine wave.
If I plot the output data on its own, this is what I get:
Single.png
Anyone have any ideas how I can stop this happening? This is the code I'm using to import and plot the 2 y-axis graph:
Amp = csvread('Amp_Out.csv',1,1);
CIN = csvread('Capacitor_Value.csv',1,1);
yyaxis left
plot(Time(1:36428),CIN(1:36428))
ylabel('Capacitance Value')
yyaxis right
plot(Time(1:36428),Amp(1969:38396))
ylabel('Amp Out')
xlabel('Time')
title('Capacitance and Output')

Antworten (1)

madhan ravi
madhan ravi am 15 Nov. 2018

0 Stimmen

Fit the curve using interp1() with the method 'spline' then you should get a perfect curve

1 Kommentar

Does this just fix the graph, or does it fix the data? My end goal is to test linearity between the two sets of data - but when I plot them against each other its again being set to discrete values

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2018a

Gefragt:

am 15 Nov. 2018

Kommentiert:

am 15 Nov. 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by