Faits : A. B._ a obtenu un CFC de couturière en 1982 puis un CFC de secrétaire en 1984, profession qu'elle a exercée jusqu'en 1996. En 1998, elle a obtenu un brevet fédéral de monitrice d'auto-école; aux côtés de son époux, également moniteur, elle a pratiqué cette profession à titre indépendant, à temps très partiel. Cette activité lui a rapporté un revenu de 3'595 fr. en 2000, 5'844 fr. en 2001 et 14'660 fr. en 2002. Le 16 octobre 2002, B._ a été victime d'un accident de la circulation qui a entraîné un traumatisme de la ceinture scapulaire droite et plusieurs fractures de côtes. A la suite de cet événement, elle a mis fin à son activité de monitrice d'auto-école. Le 17 novembre 2003, B._ s'est annoncée à l'assurance-invalidité, indiquant notamment qu'elle exerçait la profession de monitrice d'auto-école indépendante, à un tarif horaire de 75 fr., à raison de 31 heures par mois; dans un questionnaire du 2 décembre 2003, l'assurée a précisé qu'elle aurait travaillé à 100 % en qualité de monitrice d'auto-école sans l'atteinte à la santé, pour des raisons financières (soutien de famille). A l'issue de l'instruction, l'Office de l'assurance-invalidité du canton de Fribourg (l'office AI) a estimé que l'assurée serait en mesure d'exercer une activité adaptée légère, par exemple dans le domaine du bureau, ou réceptionniste, ou caissière en kiosque ou en station service, à 100 % avec un rendement réduit de 15 %. Sans l'atteinte à la santé, l'office AI a admis que l'assurée aurait continué d'exercer son activité de monitrice d'auto-école indépendante, dont elle aurait retiré un revenu de 50'000 fr. en 2002. En ce qui concerne le revenu d'invalide, l'office AI l'a fixé à 41'291 fr. sur la base des statistiques de l'Enquête suisse sur la structure des salaires 2002 (table TA1, divers 72/74, catégorie 4). Dès lors que le taux d'invalidité s'élevait à 17,4 %, l'office AI a rejeté la demande, par décision du 25 janvier 2012. B. B._ a déféré cette décision au Tribunal cantonal du canton de Fribourg, Cour des assurances sociales, en concluant principalement à l'octroi d'une rente entière, subsidiairement à la mise en oeuvre d'une expertise pluridisciplinaire. Par jugement du 23 mai 2014, la juridiction cantonale a rejeté le recours. C. B._ interjette un recours en matière de droit public contre ce jugement dont elle demande l'annulation, avec suite de frais et dépens, en concluant principalement à l'octroi d'une demi-rente d'invalidité à partir du 1 er mars 2012, subsidiairement au renvoi du dossier à l'office AI. L'office AI conclut au rejet du recours. L'Office fédéral des assurances sociales a renoncé à se déterminer.