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

Interfaces Graphiques Discussion :

graphique de matrice


Sujet :

Interfaces Graphiques

  1. #1
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut graphique de matrice
    Bonjour, je dois transposer du code matlab en python et je bloque sur un point, dans le script matlab, le logiciel affiche des tableau 2d dans un graphique, je ne sais pas comment sa marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    % partie1
     
        Pgrid_master=(Gen.master.NW_Total_R_Current.* Gen.master.Vr + Gen.master.NW_Total_S_Current.* Gen.master.Vs + Gen.master.NW_Total_T_Current.* Gen.master.Vt).*Kcurrent;
        Pgrid_slave1=(Gen.Slave1.NW_Total_R_Current.* Gen.Slave1.Vr + Gen.Slave1.NW_Total_S_Current.* Gen.Slave1.Vs + Gen.Slave1.NW_Total_T_Current.* Gen.Slave1.Vt).*Kcurrent;
        Pgrid_slave2=(Gen.Slave2.NW_Total_R_Current.* Gen.Slave2.Vr + Gen.Slave2.NW_Total_S_Current.*Gen.Slave2.Vs + Gen.Slave2.NW_Total_T_Current.*Gen.Slave2.Vt).*Kcurrent;
     
    % partie2
        Pgrid_total=Pgrid_master + Pgrid_slave1 + Pgrid_slave2;
        MeanPgridTotalPower=mean(Pgrid_total);
     
    %partie3
     plot(time,[Pgrid_total MeanPgridTotalPower.*ones(length(Pgrid_total),1)]), grid on,
            legend('Instantaneous Power - Pgrid','Mean power Pgridtotal');
    Dans la parti1, les variable entre parenthèse sont des tableau 1D (par exemple: Gen.Slave1.NW_Total_R_Current, Gen.master.Vr...)

    D'apres ce que je comprend, Pgrid_master serait un tableau de 3 tableaux, avec en colonne 1 Gen.master.NW_Total_R_Current.* Gen.master.Vr, en colonne2 Gen.master.NW_Total_S_Current.* Gen.master.Vs... etc.


    Dans la partie2 Pgrid_total est un tableau de 3 colonne: Pgrid_master, Pgrid_slave1 et Pgrid_slave2, qui eux même sont constitué de 3 colonnes...
    MeanPgridTotalPower serait un tableau 1D, contenant la moyenne de chaque ligne du tableau Pgrid_total


    C'est la partie3, time est un tableau 1D, c'est l'axe des X,
    Ce que je ne comprend pas, comment le programme peut afficher les données de Pgrid_total ?

    Voila ce que cela donne:
    Nom : Sans titre.png
Affichages : 112
Taille : 55,2 Ko

    La matrice est transformé comme par magie en 1 matrice 1 colonne ?!

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut


    Pgrid_master serait un tableau de 3 tableaux, avec en colonne 1 Gen.master.NW_Total_R_Current.* Gen.master.Vr, en colonne2 Gen.master.NW_Total_S_Current.* Gen.master.Vs... etc.
    Non, Pgrid_master est une matrice à une dimension

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pgrid_master=(Gen.master.NW_Total_R_Current.* Gen.master.Vr + Gen.master.NW_Total_S_Current.* Gen.master.Vs + Gen.master.NW_Total_T_Current.* Gen.master.Vt).*Kcurrent;
    n'est qu'une suite de multiplication et d'addition de vecteur colonne. le .* signifie que les membres sont multipliés terme à terme.

    Dans la partie2 Pgrid_total est un tableau de 3 colonne: Pgrid_master, Pgrid_slave1 et Pgrid_slave2, qui eux même sont constitué de 3 colonnes...
    MeanPgridTotalPower serait un tableau 1D, contenant la moyenne de chaque ligne du tableau Pgrid_total
    Donc Pgrid_total est la somme de 3 matrices à une dimension, ce qui nous donne une matrice à une unique dimension (je ne présuppose pas que c'est un vecteur colonne plutôt qu'une ligne, c'est pourquoi je dis matrice à une dimension). Donc MeanPgridTotalPower est un réel.

    C'est la partie3, time est un tableau 1D, c'est l'axe des X,
    Ce que je ne comprend pas, comment le programme peut afficher les données de Pgrid_total ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Pgrid_total MeanPgridTotalPower.*ones(length(Pgrid_total),1)]
    les [] servent à la concaténation. Pgrid_total est une matrice à une dimension qui est concaténé avec MeanPgridTotalPower.*ones(length(Pgrid_total),1) C'est à dire un réel multiplié par un vecteur colonne rempli de 1 de longueur de Pgrid_total.

    J'espère avoir répondu à tes interrogations.
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  3. #3
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    Tu as parfaitement répondu merci !!
    Pour le coup j'étais complètement à coté de la plaque.

    J'ai encore 2 questions, parfois j'ai ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     plot(time,[-PmgPower -MeanPmgPower.*ones(length(PmgPower),1)], grid on,
    Sa veut dire quoi le - au début de la variable?

    2) MeanPgridTotalPower est égal a: MeanPgridTotalPower=mean(Pgrid_total);

    Si j'ai bien compris, la fonction mean calcule la moyenne de tous les terme de la matrice de Pgrid_total ?, il additionne tous les termes et divise le résultat par la longueur de la matrice. Ce qui donne donc le réel.

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    1) Bah le - c'est le signe négatif? 5 et -5, a et -a, PmgPower et -Pmgpower. Enfin, si c'est pas un moins, je ne sais pas ce que c'est.

    2) C'est partiellement vrai. Ici ça l'est car la matrice est d'une seule dimension. Si ta matrice a deux dimension, il faut lui spécifier la dimension dans laquelle tu désires moyenner.

    exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    A =
     
         1     1    -1
         2    10    -3
         3   100    -5
     
    >> mean(A,1) %moyenne les lignes entre elles
     
    ans =
     
         2    37    -3
     
    >> mean(A,2) %moyenne les colonnes entre elles
     
    ans =
     
       0.333333333333333
       3.000000000000000
      32.666666666666664
     
    >> mean(mean(A)) %moyenne de toutes les valeurs de ta matrice
     
    ans =
     
        12
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  5. #5
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    Bah le - c'est le signe négatif?
    Oui, j'y avais pas pensé...

    C'est partiellement vrai. Ici ça l'est car la matrice est d'une seule dimension. Si ta matrice a deux dimension, il faut lui spécifier la dimension dans laquelle tu désires moyenner.
    Oui j'avais vu la doc, donc c'est bon j'ai tous compris.

    Merci pour ton aide précieuse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Java graphique JButton matrice
    Par nouha2 dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 21/03/2015, 19h09
  2. [Débutant] MATLAB lent avec graphique scatter (matrice 8000 * 2000)
    Par TiroMat dans le forum MATLAB
    Réponses: 5
    Dernier message: 13/01/2014, 17h59
  3. Graphique avec matrice comme légende
    Par VITALTH dans le forum SSRS
    Réponses: 0
    Dernier message: 31/10/2013, 08h12
  4. Graphiques et matrices creuses
    Par amo007 dans le forum C
    Réponses: 1
    Dernier message: 04/03/2013, 17h22
  5. Interface graphique et matrice 3D
    Par el_boucher dans le forum Images
    Réponses: 1
    Dernier message: 08/04/2010, 16h03

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