4
A
回答
1
下面是我知道的一種方法,雖然我認爲創建自定義符號是一種更自然的方式來實現這一點。
from matplotlib import pyplot as PLT
# make up some data for this example
t = range(8)
s = 7 * t + 5
# make up some data labels which we want to appear in place of the symbols
x = 8 * "dp".split()
y = map(str, range(8))
data_labels = [ i+j for i, j in zip(x, y)]
fig = PLT.figure()
ax1 = fig.add_subplot(111)
ax1.plot(t, s, "o", mfc="#FFFFFF") # set the symbol color so they are invisible
for a, b, c in zip(t, s, data_labels) :
ax1.text(a, b, c, color="green")
PLT.show()
所以這把「DP1」,「DP2」,......在每個地方的原始數據符號的 - 在本質上創建自定義「文本符號」雖然我又不得不相信有一個更直接的在matplotlib中執行此操作的方式(不使用藝術家)。
3
爲什麼不只是讓x值有些自動遞增的數字,然後改變標籤?
--jed
0
我無法找到一個方便的方式來實現這一點,所以我使出這個小助手功能。
import matplotlib.pyplot as p
def plot_classes(x, y, plotfun=p.scatter, **kwargs):
from itertools import count
import numpy as np
classes = sorted(set(x))
class_dict = dict(zip(classes, count()))
class_map = lambda x: class_dict[x]
plotfun(map(class_map, x), y, **kwargs)
p.xticks(np.arange(len(classes)), classes)
然後,調用plot_classes(data["class"], data["y"], marker="+")
應該按預期工作。
8
你應該嘗試xticks
import pylab
names = ['anne','barbara','cathy']
counts = [3230,2002,5456]
pylab.figure(1)
x = range(3)
pylab.xticks(x, names)
pylab.plot(x,counts,"g")
pylab.show()
0
從你matplotlib 2.1可以在繪圖函數使用字符串。
import matplotlib.pyplot as plt
x = ["Apple", "Banana", "Cherry"]
y = [5,2,3]
plt.plot(x, y)
plt.show()
+0
這是downvoted,但我upvoted它,因爲它是迄今爲止最緊湊的解決方案,在大多數情況下,贏得別破壞別的東西。 – RickG 2018-01-24 07:20:36
相關問題
- 1. 繪製值與matplotlib中的字符串?
- 2. 在matplotlib中繪製字符串列表
- 3. 在matplotlib中繪製特殊字符①①
- 4. 如何在matplotlib中繪製兩組字符串的散點圖
- 5. 在Matplotlib中繪製字形的陰謀
- 6. 在iPhone中繪製字符串
- 7. 在GLUT中繪製字符串
- 8. python matplotlib:從字符串索引數組繪製3d表面
- 9. Matplotlib:繪製離散值
- 10. 在Matplotlib中繪製瑕疵
- 11. 字符串不會繪製
- 12. 用BitmapFont繪製字符串
- 13. Matplotlib字符串xticks
- 14. 用UIImageView繪製NSString繪圖字符串
- 15. 繪製與matplotlib
- 16. 繪製與Matplotlib
- 17. Matplotlib繪製框
- 18. 繪製的matplotlib
- 19. 繪製matplotlib
- 20. 繪製與matplotlib
- 21. 在C#網頁上繪製字符串
- 22. 在jpanel上繪製字符串
- 23. 如何在BitmapData上繪製字符串
- 24. 在橢圓上繪製字符串
- 25. Openlayers - 在地圖上繪製字符串
- 26. 在JPanel上繪製字符串
- 27. 在Matplotlib註釋中的Unicode字符串
- 28. 使用Matplotlib從字典中繪製日期和相關值
- 29. 在畫布上繪製文本並更新字符串值
- 30. 在數組中複製字符串值
謝謝你的回覆。我發現這個:class matplotlib.ticker.FixedFormatter(seq),它可以讓你指定一組字符串作爲序列 – user299582 2010-03-23 21:05:56