إياد أحمد نشر 23 ديسمبر 2021 أرسل تقرير نشر 23 ديسمبر 2021 لدي الكود التالي الذي يمثل Heatmap: import numpy as np import seaborn as sns import matplotlib.pyplot as plt data = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15]]) fig, ax = plt.subplots() ax = sns.heatmap(data, fmt="") الخرج: ما أحتاجه هو أن تتم إضافة عبارات توضيحية لكل خلية، على سبيل المثال أريد أن تكون عناصر القائمة التالية موضوعة ضمن كل خلية بالترتيب: text = np.array([['A', 'B', 'C', 'D', 'E'], ['F', 'G', 'H', 'I', 'J'], ['K', 'L', 'M', 'N', 'O']]) أيضاً كيف يمكنني أن أجعل العبارات التوضيحية مُشكلةً من القيم data ومن ال text. أي مثلاً أريد أن يكون النص التوضيحي للخلية الأولى هو: A 1.00 والخلية الثانية: B 2.00 وهكذا.. 1 اقتباس
1 Ali Haidar Ahmad نشر 23 ديسمبر 2021 أرسل تقرير نشر 23 ديسمبر 2021 لإضافة نصوص توضيحية نستخدم الوسيط annot ونمرر له قائمة تحتوي العبارات التوضيحية للخلايا بالترتيب كما يلي: import seaborn as sns import matplotlib.pyplot as plt import numpy as np data = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15]]) text = np.array([['A', 'B', 'C', 'D', 'E'], ['F', 'G', 'H', 'I', 'J'], ['K', 'L', 'M', 'N', 'O']]) fig, ax = plt.subplots() ax = sns.heatmap(data, annot=text, fmt="") الخرج: الآن للدمج بين data و ال text يمكنك استخدام الطريقة التالية: import seaborn as sns import matplotlib.pyplot as plt import numpy as np data = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15]]) text = np.array([['A', 'B', 'C', 'D', 'E'], ['F', 'G', 'H', 'I', 'J'], ['K', 'L', 'M', 'N', 'O']]) # نقوم بدمجهم يدوياً formatted_text = (np.asarray(["{0}\n{1:.2f}".format( text, data) for text, data in zip(text.flatten(), data.flatten())])).reshape(3, 5) fig, ax = plt.subplots() ax = sns.heatmap(data, annot=formatted_text, fmt="") الخرج: 1 اقتباس
-2 Ahmed Sharshar نشر 26 ديسمبر 2021 أرسل تقرير نشر 26 ديسمبر 2021 عوضا عن اضافة القيم بشكل يدوي وهو ما لم يتم استخدامه عادة في التطبيقات العملية، يمكنك كذلك اظهار قيمة كل خلية بشكل تلقائي كالتالي: import seaborn as sns import pandas as pd import numpy as np # قاعدة البيانات df = pd.DataFrame(np.random.random((10,10)), columns=["a","b","c","d","e","f","g","h","i","j"]) # رسم الخريطة sns.heatmap(df, annot=True, annot_kws={"size": 7}) وتظهر كالتالي: بعدذلك تستطيع دمجها مع أي رموز أخرى كما في الإجابة السابقة. اقتباس
السؤال
إياد أحمد
لدي الكود التالي الذي يمثل Heatmap:
الخرج:
ما أحتاجه هو أن تتم إضافة عبارات توضيحية لكل خلية، على سبيل المثال أريد أن تكون عناصر القائمة التالية موضوعة ضمن كل خلية بالترتيب:
أيضاً كيف يمكنني أن أجعل العبارات التوضيحية مُشكلةً من القيم data ومن ال text. أي مثلاً أريد أن يكون النص التوضيحي للخلية الأولى هو:
A 1.00
والخلية الثانية:
B 2.00
وهكذا..
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.