How to plot a graph in nm

20 次查看(过去 30 天)
I want to plot a graph with wavelength on the x axis but when i input the wavelength values I convert them to meters for the calculation of y axis values. Is there a way to have the wavelength values in nm without adding a second matrix? This is what I have
theta = 10
wavelength_m = [500e-09:10e-09:700e-09]
wavelength_nm = [500:10:700]
m = 1
d = (m.*wavelength_m)/sin(theta)
spatial_frequency = 1./d
plot(wavelength_nm,spatial_frequency,"r--")
xlabel("Wavelength (nm)")
ylabel("Spatial Frequency (/m)")

采纳的回答

Daniel Pollard
Daniel Pollard 2021-2-4
Your method works perfectly well. An alternative option would be
theta = 10
wavelength = [500:10:700]
m = 1
d = (m.*wavelength)/sin(theta)
spatial_frequency = 1./d
plot(wavelength*1e-9, spatial_frequency,"r--")
xlabel("Wavelength (nm)")
ylabel("Spatial Frequency (/m)")
where I've used one vector of wavelengths (in meters) and then multiplied it by 1e-9 for the plot.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by