111 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Nikolai Block am 14 Jul. 2017
Bearbeitet: dpb am 27 Dez. 2022
Akzeptierte Antwort: dpb
In MATLAB Online öffnen
I need to plot two x-axes with the same y-axis.
The first are the dates of a Satellite mission, the second one represents the distance.
I made the dates already as a string with the function "dates". So i just need to know what i have to add to:
h = figure
plot (dates,R_plot(:,1),'-','MarkerSize',6,'Color',colorset(5))
ylim([0 10000])
title ('Data rate over distance');
xlabel ('Distances in AU');
ylabel ('consequential data rate in bit/s');
I've been googling already the function "line" to just create another line, but it wasn't working out with a datestring for me.
I use Matlab2016b and i am quite new.
1 Kommentar -1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden
-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden
S. Gokhun Tanyer am 27 Dez. 2022
Direkter Link zu diesem Kommentar
https://de.mathworks.com/matlabcentral/answers/348793-plotting-two-x-axes-with-numbers-and-dates#comment_2536972
I was searching for the same exact thing.
It is too bad there are no solutions listed here. :(
Melden Sie sich an, um zu kommentieren.
Melden Sie sich an, um diese Frage zu beantworten.
Akzeptierte Antwort
dpb am 15 Jul. 2017
Bearbeitet: dpb am 27 Dez. 2022
See <graph-with-multiple-x-axes> for example. They've really made it hard to find the link; I never did find it in current doc; had to look it up in R2014b where I knew it existed to find the phrase and then do a text search... :( And, since they built yyaxis in lieu of old plotyy, why wouldn't they have gone ahead and introduced xxaxis as well? Makes no sense what TMW does/doesn't do sometimes...
"made dates already as a string with the function "dates" " I don't find any function dates; do you mean datestr, perhaps? If so, you want to plot using a datetime value and format it as desired, not a string.
3 Kommentare 1 älteren Kommentar anzeigen1 älteren Kommentar ausblenden
1 älteren Kommentar anzeigen1 älteren Kommentar ausblenden
dpb am 15 Jul. 2017
Direkter Link zu diesem Kommentar
https://de.mathworks.com/matlabcentral/answers/348793-plotting-two-x-axes-with-numbers-and-dates#comment_469272
In MATLAB Online öffnen
[Moved Nikolai's Answer to Comment...dpb]
You are right! I was using "datetime". I already found the same page you have been sending. But i still don't know how to change the second x-Axis to a datetime Value.
My Solution right now is to first plot the dates and afterwards the distances:
h = figure
plot (dates,R_plot(:,1),'-','MarkerSize',6,'Color',colorset(5))
ylim([0 10000])
xlabel ('Distances in AU');
ylabel ('consequential data rate in bit/s');
ax1 = gca;
ax1_pos = ax1.Position;
ax2 = axes('Position',ax1_pos,...
'XAxisLocation','top',...
'YAxisLocation','right',...
'Color','none');
%Eliminating second y-Axis
set(gca,'ytick',[])
% With AU_ent as the distances in AU
x2 = AU_ent;
%Random value
y2 = 0;
line(x2,y2,'Parent',ax2,'Color','k')
Even i did not find the perfect solution, Many thanks for your help!
dpb am 15 Jul. 2017
Direkter Link zu diesem Kommentar
https://de.mathworks.com/matlabcentral/answers/348793-plotting-two-x-axes-with-numbers-and-dates#comment_469274
In MATLAB Online öffnen
I'm still not positive what it is you're wanting here, Nikolai (which is why I didn't try specific code first go 'round; wasn't sure what code to give :) ).
To set the second axis in time units you need to set the x-axis limits in terms of time values and plot the data in those units as well. Can you attach some sample of what the resulting graph you're after would look like; even a sketch by hand would suffice, probably.
BTW, if you want two axes to be the same and stay in synch with each other, look at
doc linkaxes
for way to get that behavior.
dpb am 9 Mär. 2018
Direkter Link zu diesem Kommentar
https://de.mathworks.com/matlabcentral/answers/348793-plotting-two-x-axes-with-numbers-and-dates#comment_543691
In MATLAB Online öffnen
"what if I have data points and I don't want to have a line. Plot does not seem to work" -- Maxime Penning -- Answer moved to comment by dpb
Use the optional syntax to specify linestyle without a line type.
plot(x,y,'g.')
plots with green dots. doc plot for the details in the fine print on arguments.
Melden Sie sich an, um zu kommentieren.
Weitere Antworten (0)
Melden Sie sich an, um diese Frage zu beantworten.
Siehe auch
Kategorien
MATLABGraphicsFormatting and AnnotationLabels and AnnotationsAnnotations
Mehr zu Annotations finden Sie in Help Center und File Exchange
Tags
Noch keine Tags eingegeben.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
Es ist ein Fehler aufgetreten
Da Änderungen an der Seite vorgenommen wurden, kann diese Aktion nicht abgeschlossen werden. Laden Sie die Seite neu, um sie im aktualisierten Zustand anzuzeigen.
Website auswählen
Wählen Sie eine Website aus, um übersetzte Inhalte (sofern verfügbar) sowie lokale Veranstaltungen und Angebote anzuzeigen. Auf der Grundlage Ihres Standorts empfehlen wir Ihnen die folgende Auswahl: .
Sie können auch eine Website aus der folgenden Liste auswählen:
Amerika
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- Deutsch
- English
- Français
- United Kingdom(English)
Asien-Pazifik
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)
Kontakt zu Ihrer lokalen Niederlassung