2016-06-25 11 views
0

Das folgende ist mein Python-Code ein Balkendiagramm zur Erzeugung:Python mathplotlib - überlappende Texte in xticks und das Hinzufügen Prozentsatz Symbol in yticks

import matplotlib.pyplot as plt; plt.rcdefaults() 
import numpy as np 
import matplotlib.pyplot as plt 

objects = ('Increasing operational efficiency', 
     'Informing strategic direction', 
     'Better customer service', 
     'Identifying and developing new products', 
     'Enhanced customer experience', 
     'Identifying new markets', 
     'Faster go to market', 
     'Complying with regulations', 
     'Other') 
y_pos = np.arange(len(objects)) 
performance = [51, 36, 27, 24, 20, 11, 8, 6, 3] 

plt.bar(y_pos, performance, align='center', alpha=0.5) 
plt.xticks(y_pos, objects) 

plt.show() 

In der Ausgabe der xticks überlappen immer, ist es eine Möglichkeit, zu überwinden es. Mein zweiter Zweifel ist in den yticks die Werte kommen von 0 bis 60 mit einem Intervall von 10, gibt es eine Möglichkeit, ein '%' Symbol zusammen mit der Zahl wie 0%, 10%, ..., 60% eher hinzuzufügen als 0, 10, ..., 60.

Sie für die Hilfe danken, bin ich neue

Antwort

1

Sie hätte gefunden Antworten auf Ihre Fragen mit einer einfachen Suche nach mathplotlib ... Sie

die x-Achse drehen kann Etiketten plt.gcf().autofmt_xdate()

für die Prozent-Zeichen auf der y-Achse arbeiten, verwenden

ax = plt.gca() 
vals = ax.get_yticks() 
ax.set_yticklabels(['{:.0f}%'.format(x) for x in vals]) 
+0

Vielen Dank @Diziet, aber einige Etiketten passen nicht in das Fenster. Gibt es eine Möglichkeit, das Fenster zu erweitern? – Jeril

+0

Um das Fenster in der richtigen Größe automatisch zu erweitern, können Sie 'plt.tight_layout()' verwenden – Dvg25