Si vous utilisez une fonction comme plot (x, y), la façon la plus simple de les afficher sur le même graphique consiste simplement à ne pas rééchantillonner aucune d'entre elles, mais simplement à remplir chaque vecteur x avec les valeurs appropriées pour chaque signal, de sorte que les deux apparaissent où vous voulez sur l'écran.
Vous pouvez également configurer le tracé pour avoir deux axes x différents (un pour chaque courbe) avec des étiquettes et des légendes différentes si vous le souhaitez.
Maintenant, à propos du rééchantillonnage. Je vais utiliser Fs pour la fréquence d'échantillonnage.
Un signal échantillonné ne peut pas contenir de composantes de fréquence supérieures à Fs / 2. Il est illimité.
De plus, un signal qui ne contient que des composantes de fréquence jusqu'à une fréquence F peut être représenté avec précision à une fréquence d'échantillonnage de 2F.
Notez que cette représentation "précise" est mathématique et non visuelle. Pour une bonne représentation visuelle, avoir 5 à 10 échantillons par période (donc aucune composante de fréquence notable au-dessus de Fs / 10 environ) aide vraiment le cerveau à relier les points. Voir cette figure: même signal, la courbe inférieure a un taux d'échantillonnage plus faible, il n'y a pas de perte d'information car la fréquence est inférieure à Fs / 2 mais elle ressemble toujours à de la merde.
C'est exactement le même signal. Si vous suréchantillonnez (reconstruisez) celui du bas avec un filtre sinc, vous obtiendrez celui du haut.
Décimation (sous-échantillonnage) repliera toutes les composantes de fréquence plus haut que le nouveau Fs / 2 dans le signal. C'est pourquoi nous mettons généralement un filtre passe-bas raide avant le décimateur. Par exemple, pour sous-échantillonner de Fs = 2000 Hz à Fs = 30 Hz, nous appliquerions d'abord un passe-bas d'ordre élevé avec une coupure un peu inférieure à 15 Hz et ensuite décimer.
Cependant, ce filtre introduira des problèmes de réponse transitoire, il aura un décalage de phase à certaines fréquences, et il peut changer l'aspect visuel de votre signal, ce que vous ne voulez pas faire si l'idée est de les comparer visuellement. La règle ci-dessus s'applique, ne sous-échantillonnez pas trop, gardez toujours Fs 5-10 fois la fréquence d'intérêt la plus élevée si vous voulez que la forme du signal signifie quelque chose. C'est pourquoi une portée de 200 MHz doit échantillonner à 1-2 Gsps.
Ma question est: est-il plus sage de sous-échantillonner la deuxième courbe ou de suréchantillonner la première?
Comme indiqué ci-dessus, le plus sage est de ne pas du tout jouer avec les données et de simplement les présenter chacune avec leur propre axe x sur le même graphique.
La conversion du taux d'échantillonnage serait nécessaire dans certains cas. Par exemple, pour réduire le nombre de points, réduire l'utilisation de la mémoire, la rendre plus rapide ... ou pour que les deux signaux utilisent les mêmes coordonnées "x" pour effectuer des calculs sur eux.
Dans ce cas, vous pouvez également utiliser un F intermédiaire, sous-échantillonner le signal avec des F élevés et suréchantillonner celui avec des F faibles. Ou simplement sous-échantillonner celui avec des F élevés.
Faites attention aux critères de Nyquist, et ne choisissez pas une fréquence d'échantillonnage trop faible ou vous perdrez la fidélité de la forme d'onde sur le signal Fs élevé, vous obtiendrez des changements de phase en raison du filtre passe-bas, etc. Ou si vous connaissez le contenu haute fréquence est négligeable, vous pouvez faire un choix éclairé. je
Si vous utilisez une interpolation linéaire pour faire correspondre les coordonnées "x", n'oubliez pas qu'il a également besoin d'un Fs assez élevé. L'interpolation fonctionnerait sur le signal du haut dans l'intrigue ci-dessus, elle ne fonctionnerait pas sur celui du bas. Idem si vous êtes intéressé par min, max et autres.
Et ... notez que le suréchantillonnage / suréchantillonnage perturbera également la réponse transitoire, au moins visuellement. Par exemple, si vous suréchantillonnez une étape, vous obtiendrez beaucoup de sonneries en raison de la réponse impulsionnelle du filtre sinc. C'est parce que vous obtenez un signal à bande limitée, et une belle étape avec des coins carrés a en fait une bande passante infinie.
Je vais prendre une onde carrée comme exemple. Pensez au signal échantillonné d'origine: 0 0 0 1 1 1 0 0 0 1 1 1 ... Votre cerveau voit une onde carrée.
Mais la réalité est que vous devez représenter chaque échantillon comme un point, et il n'y a rien entre les points. C'est tout l'intérêt de l'échantillonnage. Il n'y a rien entre les échantillons. Donc, quand cette onde carrée a été suréchantillonnée en utilisant une interpolation sincère ... ça a l'air drôle.
Il s'agit simplement de la représentation visuelle d'une onde carrée à bande limitée. Les tremblements existent un peu ... ou peut-être pas. Il n'y a aucun moyen de savoir s'ils étaient là dans le signal d'origine ou non. Dans ce cas, la solution aurait été d'acquérir l'onde carrée d'origine avec un taux d'échantillonnage plus élevé pour obtenir une meilleure résolution sur le bord, idéalement, vous voulez plusieurs échantillons sur votre bord pour qu'il ne ressemble plus à une bande passante infinie. Ensuite, lors du suréchantillonnage d'un tel signal, le résultat n'aura pas d'artefacts visuels.
En tous cas. Comme vous pouvez le voir ... il suffit de jouer avec les axes x. C'est beaucoup plus simple.