मैटप्लॉटलिब में bar3d() का उपयोग कर पाइथन में एक 3 डी बार हिस्टोग्राम बनाने की कोशिश कर रहा हूं।पायथन matplotlib -> 3 डी बार साजिश -> टिक लेबल स्थिति समायोजित, पारदर्शी सलाखों
मैं बिंदु जहां मैं इसे कुछ डेटा पास करने के बाद स्क्रीन पर मेरी हिस्टोग्राम प्रदर्शित कर सकते हैं मिल गया है, लेकिन मैं निम्नलिखित पर अटक कर रहा हूँ:
- प्रदर्शित कुल्हाड़ियों लेबल सही ढंग से (वर्तमान में अंतिम चूक जाता है (या प्रारंभिक?) टिक लेबल)
- या तो प्रत्येक अक्ष पर टिक बनाने (उदाहरण के लिए 'सोम' के लिए) या तो इसके संबंधित ब्लू बार को इंगित करें, या प्रमुख टिक अंकों के बीच टिक लेबल को स्थिति दें।
- सलाखों को सेमी-पारदर्शी बनाना।
मैं 'कुल्हाड़ी' उदाहरण के लिए कई अलग अलग तर्क गुजर की कोशिश की है, लेकिन बावजूद काम करने के लिए कुछ भी नहीं मिला है और संदेह है कि मैं क्या इसके साथ प्रदान करने के लिए गलत समझा है। मैं इस पर किसी भी मदद के लिए बहुत आभारी रहूंगा।
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
#from IPython.Shell import IPShellEmbed
#sh = IPShellEmbed()
data = np.array([
[0,1,0,2,0],
[0,3,0,2,0],
[6,1,1,7,0],
[0,5,0,2,9],
[0,1,0,4,0],
[9,1,3,4,2],
[0,0,2,1,3],
])
column_names = ['a','b','c','d','e']
row_names = ['Mon','Tue','Wed','Thu','Fri','Sat','Sun']
fig = plt.figure()
ax = Axes3D(fig)
lx= len(data[0]) # Work out matrix dimensions
ly= len(data[:,0])
xpos = np.arange(0,lx,1) # Set up a mesh of positions
ypos = np.arange(0,ly,1)
xpos, ypos = np.meshgrid(xpos+0.25, ypos+0.25)
xpos = xpos.flatten() # Convert positions to 1D array
ypos = ypos.flatten()
zpos = np.zeros(lx*ly)
dx = 0.5 * np.ones_like(zpos)
dy = dx.copy()
dz = data.flatten()
ax.bar3d(xpos,ypos,zpos, dx, dy, dz, color='b')
#sh()
ax.w_xaxis.set_ticklabels(column_names)
ax.w_yaxis.set_ticklabels(row_names)
ax.set_xlabel('Letter')
ax.set_ylabel('Day')
ax.set_zlabel('Occurrence')
plt.show()
हाय, आपके सुझाव के लिए धन्यवाद। मैं अल्फा तर्क का उपयोग करने की कोशिश की है, लेकिन निम्न त्रुटि प्राप्त: ax.bar3d में 'फ़ाइल" matrix_to_3D_histogram.py ", रेखा 43, (xpos, ypos, zpos, dx, उप, dz, color = 'ख ', अल्फा = 0.5) टाइप एरर: bar3d() को एक अप्रत्याशित कीवर्ड तर्क' अल्फा ' –
Dman
मिला है यह अजीब है, मुझे कोई समस्या नहीं है, और मैंने अभी आपके कोड की प्रतिलिपि बनाई है और मैंने जो पंक्ति आपको बताया है उसे बदल दिया है। आप किस संस्करण का उपयोग कर रहे हैं? मैं matplotlib 1.1.0 का उपयोग कर रहा हूँ। – carla
@Dan matplotlib के संस्करण का परीक्षण करने के लिए यह टाइप करें: 'matplotlib आयात करें; प्रिंट matplotlib .__ संस्करण__' – Hooked