修文位于貴州省中部,貴陽市北部,距貴陽市38公里,東和東北與開陽縣交界,南與白云區為鄰,西與清鎮市、黔西縣、金沙縣隔貓跳河、六廣河相望,北與息烽縣接壤。修文縣國土面積1071平方公里,屬云貴高原黔中丘原區。東部和南部為砂頁巖層,地山、丘陵、盆地交叉分布,地面平緩寬闊,為縣內田壩區;西和西北由于貓跳河、六廣河水流切割和溶蝕強烈,形成深切的峽谷和劇降的急流險灘,巖溶作用明顯,山巒重疊,峰嶺綿亙。全縣大部分地方海拔1200—1400米之間,縣城海拔1241米。修文縣屬北亞 熱帶和南溫帶季風氣候,雨量充沛、氣候溫和濕潤、雨熱同季、四季分明,盛夏無酷熱、隆冬無寒冷、氣候宜人。年平均氣溫13.6℃,最熱月(七月)平均氣溫22.4℃,最泠月(一月)平均氣溫3.5℃;極端最高氣溫33.5℃,極端最低氣溫-8.5℃;年降水量1175.7毫米,無霜期為268天。
全縣轄4鎮6鄉(其中1個民族自治鄉),有217個村民委員會,12人居民委員會。全縣總人口28.3萬人,以漢族為主,還有苗族、布依族、彝族等22個民族.