IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Problème graphique 3D imagerie acoustique


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut Problème graphique 3D imagerie acoustique
    Bonjour,
    Nous travaillons à partir d'un fichier excel qui est une matrice contenant des niveaux en dB de taille 13751x31. Nous aimerions a partir de cette matrice tracer un graphique en 3D avec en abscisse le temps (x) , en ordonnée les fréquences (y) et en z le niveau contenu dans le fichier excel. Habituellement nous tracon ce graphe sous excel, mais nous étions limités en nombre de points, donc nous aurions aimé essayé de refaire ce type de graphe sous matlab. Et nous voila bloqués.


    Le programme en question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    clear all
    close all
    z=xlsread('fichiertest.xls');
    y=[20 25 31.5 40 50 63 80 100 125 160 200 250 315 400 500 630 800 1000 1250 1600 2000 2500 3150 4000 5000 6300 8000 10000 12500 16000 20000];
    B=z(:,1);
    p=input('donnez le pas temporel (en seconde) :');
    t=length(B);
    vtps=linspace(0,t*p,t);
    x=vtps';
    figure
    plot3(x,y,z);
    Le message d'erreur :
    ??? Error using ==> plot3
    Vectors must be the same lengths.
    Les variables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      Name       Size         Bytes  Class
     
      B      13751x1         110008  double array
      p          1x1              8  double array
      t          1x1              8  double array
      vtps       1x13751     110008  double array
      x      13751x1         110008  double array
      y          1x31           248  double array
      z      13751x31       3410248  double array
     
    Grand total is 467567 elements using 3740536 bytes


    Si quelqu'un sait comment nous aider, ou si besoin de plus de precisions, n'hesitez pas !!!
    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Si vous souhaitez tracer une surface, il faut utiliser la fonction SURFACE

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    merci,
    en traçant la fonction surface(x,y,z)
    il persiste un probleme de dimension des matrices que je ne comprends pas

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Comme ceci :

    Car :

    surface(x,y,Z) [...] Note that x corresponds to the columns of Z and y corresponds to the rows of Z

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    Merci beaucoup !
    j'obtient maintenant un graphe, qui ne correspond pas du tout a ce que j'attendais, quelques raies de couleurs sur fond noir, et ce message d'erreur :
    Warning: Unrecognized OpenGL version, defaulting to 1.0.
    Est ce un probleme causé par la version de matlab que j'utilise ?

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Quelle est ta version de MATLAB ? Sur quel système d'exploitation ?

    Que retourne ceci ?

    Pour le noir sur la surface, essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    surface(x,y,z.','edgecolor','none')

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    On utilise Windows 2000 Professional (5.0, Build 2195) Service Pack 4
    Le version de matlab est Matlab Release 12

    >> opengl info
    Warning: Unrecognized OpenGL version, defaulting to 1.0.
    > In C:\matlabR12\toolbox\matlab\graphics\opengl.m at line 47

    Version = 1.3.1011 Win2000 Release
    Vendor = ATI Technologies Inc.
    Renderer = RADEON 9200SE DDR x86/SSE2
    MaxTextureSize = 2048
    Extensions = GL_ARB_multitexture GL_EXT_texture_env_add GL_EXT_compiled_vertex_array GL_S3_s3tc GL_ARB_occlusion_query GL_ARB_point_parameters GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_transpose_matrix GL_ARB_vertex_blend GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_window_pos GL_ATI_element_array GL_ATI_envmap_bumpmap GL_ATI_fragment_shader GL_ATI_map_object_buffer GL_ATI_texture_env_combine3 GL_ATI_texture_mirror_once GL_ATI_vertex_array_object GL_ATI_vertex_attrib_array_object GL_ATI_vertex_streams GL_ATIX_texture_env_combine3 GL_ATIX_texture_env_route GL_ATIX_vertex_shader_output_point_size GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_clip_volume_hint GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_multi_draw_arrays GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_stencil_wrap GL_EXT_texgen_reflection GL_EXT_texture3D GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_vertex_array GL_EXT_vertex_shader GL_HP_occlusion_test GL_NV_blend_square GL_NV_occlusion_query GL_NV_texgen_reflection GL_SGI_color_matrix GL_SGIS_generate_mipmap GL_SGIS_multitexture GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays GL_WIN_swap_hint WGL_EXT_extensions_string WGL_EXT_swap_control
    Merci le noir a bien été supprimé, mais on obtient ce genre de graphe :


    Et on aimerai obtenir ce genre de graphe :


    Merci pour tout aide !

  8. #8
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Tu pourrais attacher le fichier xls ou les variables MATLAB dans un fichier mat (compressé en zip) ?

  9. #9
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    As-tu regardé la fonction CONTOURF ?

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    Voici ce que j'obtiens avec la fonction CONTOURF :


    Plus de messages d'erreur, et en zoomant ca se rapproche assez de ce qu'on peut obtenir avec excel, ce doit etre un probleme de la gestion de l'echelle des couleurs.

    Dernière question (j'espere), comment fait on pour gerer une echelle de couleur du type, dégradé de couleur de bleu à rouge pour des paliers de 10 en 10, c'est a dire pour une valeur comprise entre 20 et 30 une couleur bleue et ce jusqu'a 80.

    Merci encore

Discussions similaires

  1. Problème graphique
    Par Akasha2509 dans le forum Scheme
    Réponses: 1
    Dernier message: 03/12/2006, 11h43
  2. Problème graphique & calcul dans champ
    Par jacquesprogram dans le forum Access
    Réponses: 1
    Dernier message: 08/09/2006, 15h09
  3. [Cacti ] Problèmes graphiques
    Par seumeneur dans le forum Développement
    Réponses: 2
    Dernier message: 23/07/2006, 16h14
  4. Gros problème graphique
    Par Blo0d4x3 dans le forum Windows XP
    Réponses: 7
    Dernier message: 16/06/2006, 21h12
  5. Problème graphique (Vectoriel?...)
    Par Aloneghost dans le forum Langage
    Réponses: 3
    Dernier message: 25/04/2006, 17h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo