Graphique sur Matlab

Fermé
sweet_girl_85 Messages postés 32 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 25 mars 2011 - Modifié par sweet_girl_85 le 23/03/2011 à 15:57
sweet_girl_85 Messages postés 32 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 25 mars 2011 - 23 mars 2011 à 23:05
Bonjour,

Svp, j'ai besoin de faire un graphique sur matlab. Il s'agit de représenter l'évolution d'une variable en fonction du temps. Je vous donne quelques lignes de mon fichiers d'entrée pour avoir une idée sur le format.

%Fichier données
12/04/2001 15:14 5.8
12/04/2001 16:14 16.2
12/04/2001 17:14 0.0
12/04/2001 18:14 4
12/04/2001 19:14 18
12/04/2001 20:14 4.2
12/04/2001 21:14 9



Pour les lignes que j'ai programmées pour faire cette représentation sont les suivants:
function plot_graph


function plot_graph
fic_data=fopen('D:/Travail_préliminaire/Data/fic_test_1.txt','r');
fgetl(fic_data);
data=fscanf(fic_data,'%16s %f', [2 Inf]);
date_num=datenum(data(1,:));
val=data(2,:);
plot(date_num,val,'r:+');
end


Je trouve un graphique totalement en désordre avec des valeurs qui ne coincident pas avec ce que j'ai introduit.

Merci d'avance
à+

1 réponse

Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
23 mars 2011 à 16:20
fait une sortie de data pour vérifier que tu récupère bien ce que tu veux. Mais mixer enteier et chaine de caractère, ça me parait étrange.
en lisanty ça : https://www.mathworks.com/help/matlab/ref/fscanf.html;jsessionid=dc91fc6def905e2a008ebbd6e792
j'aurai plutôt mis data=fscanf(fic_data,'%16c%f', [2 Inf]);
pour le mélange chaine numérique, il y a :
A combination of numeric and character specifiers, A is numeric, of class double. MATLAB converts each character to its numeric equivalent. This conversion occurs even when the format explicitly skips all numeric values (for example, a format of '%*d %s').
Je pense qu'il faut faire deux passes de lecture.
0
sweet_girl_85 Messages postés 32 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 25 mars 2011
23 mars 2011 à 23:05
j'ai pas trouvé de solution!!
someone can help me please??
0