具有互补色的响应式 3D 热图组件,适用于博客和内容使用,具有深色模式支持。
<div class="p-4 bg-white dark:bg-gray-900 rounded-lg shadow-xl"> <h2 class="text-2xl font-bold mb-4 text-gray-800 dark:text-white">Monthly Activity Heatmap</h2> <div class="grid grid-cols-7 gap-1 "> <!-- Days of the week --> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Sun</div> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Mon</div> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Tue</div> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Wed</div> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Thu</div> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Fri</div> <div class="text-center text-gray-500 dark:text-gray-400 text-xs uppercase">Sat</div> <!-- Heatmap cells (example for 4 weeks) --> {[...Array(28)].map((_, i) => ( `<div key={i} class="relative w-8 h-8 md:w-10 md:h-10 transform perspective-1000 -rotate-x-15 rotate-y-15 p-1"> <div class="absolute inset-0 rounded-md shadow-lg transition-all duration-300 transform ${i % 7 === 0 ? "bg-red-500 dark:bg-red-700" : ""} ${i % 7 === 1 ? "bg-red-600 dark:bg-red-800" : ""} ${i % 7 === 2 ? "bg-orange-500 dark:bg-orange-700" : ""} ${i % 7 === 3 ? "bg-orange-600 dark:bg-orange-800" : ""} ${i % 7 === 4 ? "bg-red-700 dark:bg-red-900" : ""} ${i % 7 === 5 ? "bg-red-800 dark:bg-red-950" : ""} ${i % 7 === 6 ? "bg-orange-700 dark:bg-orange-900" : ""} hover:scale-110 hover:rotate-x-0 hover:rotate-y-0 group-hover:opacity-75 flex items-center justify-center text-white text-xs font-bold "> ${i + 1} </div> </div>` )).join("")} </div> <div class="mt-4 flex justify-between text-gray-600 dark:text-gray-400"> <span>Less</span> <div class="flex space-x-1"> <div class="w-4 h-4 bg-red-400 dark:bg-red-600 rounded"></div> <div class="w-4 h-4 bg-red-500 dark:bg-red-700 rounded"></div> <div class="w-4 h-4 bg-red-600 dark:bg-red-800 rounded"></div> <div class="w-4 h-4 bg-red-700 dark:bg-red-900 rounded"></div> <div class="w-4 h-4 bg-red-800 dark:bg-red-950 rounded"></div> </div> <span>More</span> </div> </div>
具有类似配色方案的 3D 热图组件,适用于产品组合。它响应迅速并支持深色模式。
响应式热图组件,具有 Glassmorphism 风格、相似的配色方案和适度的投资组合复杂性,并支持深色主题。
一个为深色模式设计的响应式热图组件,使用Tailwind CSS风格,具有随机占位图像和用户头像。