J'ai trouvé quelques solutions proches de cela, mais je n'arrive toujours pas à étiqueter mes axes correctement. Il me manque quelque chose de petit.Conserver la mise à l'échelle linéaire de l'axe des y lors du traçage des données du journal dans matplotlib
J'ai une courbe de décroissance radioactive à tracer en ligne droite.
J'ai 2 listes de données, et je tracer en utilisant scatter(hours,np.log(activity),color='red')
l'axe y est comme np.log (activité) comme prévu, mais je voudrais faire juste une activité tout en maintenant le tracé linéaire.
en utilisant a.yaxis.set_major_formatter(ticker.FormatStrFormatter("%d"))
Je peux changer les étiquettes de tiques à tout ce que je veux mais je ne peux pas assigner une liste aux étiquettes de graduation. si je remplace% d par activity [0] par exemple, alors toutes les ticks prennent cette valeur.
J'espère que c'est clair ici ce que j'essaie de faire.
voir ici parcelle
Tout ce que je veux faire est de multiplier l'axe des y tiques par np.exp (y-tiques)
acclamations
Votre premier point a été ma méthode originale, mais l'autre L'ajustement im doing ne s'affiche donc pas correctement. l'axe de l'échelle logarithmique le raccord linéaire. Le deuxième point était la solution que je cherchais, Tyvm! – PatfordS
Mon approche dans cette situation est généralement de faire l'ajustement linéaire aux données du journal, puis tracer l'ajustement comme 'exp (m * x + b)' sur le tracé à l'échelle logarithmique des données d'origine. Heureux cette autre solution fonctionne pour vous si! –