Faits :
A.
A la suite du décès de leur père le 28 août 1980, X._, Y._ et Z._ sont devenus propriétaires indivis de deux immeubles, sur lesquels se trouvent plusieurs bâtiments aux adresses... nos 8, 10, 12, 14, 16 et 18, à V._. Par acte de cession notarié du 21 mars 2005, Z._ a cédé ses droits successifs à ses deux frères. En contrepartie, ceux-ci lui ont accordé, ainsi qu'à son épouse, une rente viagère de 85'000 fr. par an (d'une valeur capitalisée de 1'106'105 fr.) et ont repris sa part des dettes hypothécaires par 997'993 fr.30, de sorte que le prix des droits cédés s'élevait à 2'104'098 fr.30; l'acte notarié mentionne ainsi une valeur totale des immeubles de 6'312'294 fr.90. Depuis la cession, X._ et Y._ sont inscrits au registre foncier comme propriétaires communs des immeubles.
Par contrat du 6 août 2012, A._ a pris à bail un appartement de deux pièces au troisième étage du bâtiment sis... n° 10. Prévu pour durer initialement du 15 septembre 2012 au 30 septembre 2013, le bail devait ensuite se renouveler d'année en année sauf avis de résiliation. Le loyer mensuel net était fixé à 1'400 fr. Par formule officielle, la locataire a été informée que le loyer mensuel net du précédent locataire s'élevait à 1'270 fr.
B.
Le 12 octobre 2012, A._ a contesté le loyer initial. A la suite de l'échec de la conciliation, la Commission de conciliation en matière de baux à loyer du district de Nyon a fait une proposition de jugement ramenant le loyer initial à 1'270 fr. La locataire a fait opposition et la commission lui a délivré une autorisation de procéder.
La locataire a ouvert action devant le Tribunal des baux du canton de Vaud. En dernier lieu, elle concluait à ce que le loyer mensuel net soit fixé à 600 fr. dès le 15 septembre 2012, puis à 550 fr. dès le 30 septembre 2015; elle demandait en outre que la garantie locative soit réduite en conséquence et que les montants payés en trop lui soient remboursés. Les bailleurs ont conclu au rejet de l'action.
Par jugement du 27 mai 2015, le Tribunal des baux a fixé le loyer mensuel net initial à 1'270 fr.; il a également réduit le montant de la garantie et dit que les bailleurs devaient rembourser les montants versés en trop.
La locataire a interjeté appel. La Cour d'appel civile du Tribunal cantonal vaudois n'a pas invité les bailleurs à se déterminer. Par arrêt du 4 février 2016, elle a confirmé le jugement attaqué. Elle a constaté que les bailleurs avaient hérité de l'immeuble en 1980 et que lors de la conclusion du bail, ils en étaient propriétaires depuis plus de 32 ans, qu'il n'était pas possible de déterminer le prix effectif des biens successoraux en 1980, qu'il était douteux qu'une expertise permette d'obtenir des renseignements fiables à ce sujet, enfin qu'aucune indication concernant la valeur de l'immeuble en 1980 ou la valeur des fonds propres investis ne pouvait être déduite de l'acte de cession de 2005. Devant l'impossibilité de déterminer le prix effectif de l'immeuble litigieux et le montant des fonds propres investis lors de l'acquisition, devant l'absence de pièces comptables et de renseignements tangibles et comme l'immeuble, acquis il y a plusieurs décennies, pouvait être considéré comme ancien, la Cour d'appel a admis que le juge de première instance avait privilégié à bon droit la méthode des loyers usuels, méthode dont l'application en tant que telle n'était pas remise en cause en procédure d'appel.
C.
A._ exerce un recours en matière civile. Elle conclut à ce que le loyer mensuel net soit fixé à 600 fr. dès le 15 septembre 2012, puis à 579 fr.15 dès le 1 er octobre 2015 et à ce que le montant de la garantie locative soit réduit à 1'800 fr.
X._ et Y._ proposent le rejet du recours.

Considérant en droit :
1.
Le recours est dirigé contre une décision finale (<ref-law>) rendue en matière civile (<ref-law>) par un tribunal supérieur d'un canton, qui a statué sur recours (<ref-law>). Devant l'autorité précédente (<ref-law>), la part contestée du loyer s'élevait à 670 fr. par mois (1'270 - 600), soit 8'040 fr. par année. Après multiplication de ce dernier montant par vingt (<ref-law>; <ref-ruling> consid. 1.1 p. 582), la présente cause atteint manifestement la valeur litigieuse de 15'000 fr. à laquelle est subordonnée la recevabilité du recours en matière civile dans les affaires relevant du droit du bail à loyer (<ref-law>). Interjeté par la partie qui n'a pas obtenu gain de cause et dispose ainsi de la qualité pour recourir (<ref-law>), le recours est en principe recevable dès lors qu'il a été déposé dans le délai (<ref-law>) et la forme (<ref-law>) prévus par la loi.
2.
La recourante se plaint d'une violation de l'<ref-law>. Elle conteste l'application dans le cas présent des principes établis en rapport avec les immeubles anciens. A son sens, les juges cantonaux auraient dû effectuer un calcul de rendement net, en prenant comme base la valeur d'attribution des immeubles arrêtée dans l'acte de cession du 21 mars 2005 (6'312'294 fr.90), lequel valait partage de la succession.
2.1. En vertu de l'<ref-law>, le loyer est abusif lorsqu'il permet au bailleur d'obtenir un rendement excessif de la chose louée. Est ici visé le rendement net des fonds propres investis. Ce rendement correspond au rapport entre les revenus nets que la chose louée procure au bailleur, après déduction de toutes les charges, et les fonds propres investis. Le loyer doit d'une part offrir un rendement raisonnable par rapport aux fonds propres investis et d'autre part couvrir les charges immobilières. Le calcul du rendement net relève de la méthode absolue, où le loyer est contrôlé sur la base de la situation financière de l'immeuble à un moment donné, sans égard aux accords antérieurs. Globalement, il implique de déterminer les coûts d'investissement financés par les fonds propres (principalement le prix d'acquisition de l'immeuble) et d'appliquer à ces investissements un taux de rendement admissible, qui se définit par le taux d'intérêt hypothécaire de référence augmenté de 0,5%. Il convient d'y ajouter les charges immobilières annuelles, soit les charges financières (en particulier les intérêts hypothécaires dus sur les emprunts), les charges courantes (impôt, prime d'assurance, etc.) et les charges d'entretien. Il n'est pas possible de substituer aux coûts d'investissement d'autres valeurs, plus ou moins abstraites, telles que la valeur vénale de l'immeuble, sa valeur fiscale ou sa valeur d'assurance-incendie, celles-ci se référant à des valeurs objectives liées au marché et non aux coûts concrets liés à l'acquisition de l'immeuble (arrêt 4A_559/2015 du 22 août 2016 destiné à la publication, consid. 2.1 et les arrêts cités). C'est donc le prix d'acquisition effectivement payé qui est en principe déterminant, fût-il inférieur à la valeur vénale, sauf circonstances particulières; ainsi, si l'immeuble a été acquis à un prix préférentiel dans le cadre d'une donation mixte ou du partage d'une succession, le bailleur sera en droit de se fonder sur le prix effectif du marché au moment de l'acquisition (arrêt 4A_198/2014 du 17 juillet 2014 consid. 4.4; arrêt 4C.285/2005 du 18 janvier 2006 consid. 2.5; arrêt 4C.234/1994 du 6 décembre 1994 consid. 3a).
A partir de ces points de référence, les fonds propres investis sont réévalués en fonction de l'évolution de l'indice suisse des prix à la consommation (IPC), étant précisé que le montant objet de la réévaluation ne peut dépasser le 40% du prix de revient de l'immeuble (<ref-ruling> consid. 6a p. 174; <ref-ruling> consid. 5b p. 103). Ce plafonnement de 40% s'applique quel que soit le rapport entre les fonds propres et les fonds empruntés, donc également si la chose louée a été financée entièrement par des fonds propres (cf. ATF <ref-ruling> consid. 5b p. 102). Le résultat (de l'addition du rendement net admissible et des charges immobilières) représente l'état locatif (global, soit pour tout l'immeuble) annuel admissible qu'il s'agit ensuite de "ventiler" pour viser la chose louée (unité locative), en principe par l'application du critère de la pièce ou de la surface (<ref-ruling> consid. 3b p. 189).
2.2. En l'espèce, les deux intimés et le troisième frère ont acquis les immeubles en propriété commune en 1980 par succession; du point de vue économique, les bailleurs ont ainsi acquis les deux tiers des immeubles. En 2005, le troisième frère, par la cession de sa part dans la succession, est sorti de la communauté héréditaire, les deux intimés devenant alors les seuls propriétaires communs des immeubles; du point de vue économique, les bailleurs ont ainsi acquis le dernier tiers des immeubles.
Les intimés ont acquis les deux premiers tiers des immeubles en 1980 par succession légale; en tant qu'héritiers, ils ont, de par la loi, été saisis des droits et obligations du de cujus. A la différence d'une acquisition par acte entre vifs, l'acquisition par succession ne saurait entraîner de modification des bases de calcul (cf. arrêt 4C.291/2001 du 9 juillet 2002 consid. 3b). Les héritiers succèdent au de cujuset ne peuvent prétendre qu'au rendement admissible des investissements faits par le de cujus lui-même; en particulier, la valeur vénale de l'immeuble au décès, respectivement au moment de l'acquisition par les héritiers est sans pertinence pour déterminer le loyer admissible. La situation en cas d'acquisition par succession diffère de celle en cas d'acquisition entre vifs, lors du partage ultérieur de la succession.
En l'espèce, il n'y a pas eu de partage complet de la succession, tendant à la dissolution de la communauté héréditaire. En mars 2005, les intimés ont acquis les droits de leur frère dans l'indivision pour un montant correspondant à l'addition de la valeur capitalisée de la rente viagère servie au cédant et du tiers des dettes hypothécaires, sans qu'un lien avec la valeur même des immeubles ne soit établi. De plus, économiquement, cet investissement ne se rapporte qu'à l'acquisition d'un tiers des immeubles. Comme les autorités précédentes l'ont admis à juste titre, on ne saurait dès lors prendre comme valeur déterminante pour un calcul de rendement le montant obtenu en triplant la somme de 2'104'098 fr.30 figurant dans l'acte de cession du 21 mars 2005.
Il s'ensuit qu'un calcul de rendement net supposerait en l'espèce connaître notamment les fonds investis avant 1980 par le père des intimés ou, le cas échéant, par les ayants droits précédents. Ces données font défaut. Il convient d'examiner à présent si cette absence porte à conséquence.
2.3. Pour les immeubles anciens, la jurisprudence tient compte du fait qu'il peut s'avérer difficile, voire impossible, de déterminer les fonds propres investis. Les pièces comptables font parfois défaut ou ne reflètent plus la réalité économique actuelle. Pour cette catégorie d'immeubles, soit pour les immeubles construits ou acquis il y a "plusieurs décennies" (<ref-ruling> consid. 3.1.1 p. 435), il n'y a pas lieu de calculer le rendement net selon la méthode absolue. Leur valeur est déterminée par référence aux loyers usuels du quartier, en comparant le loyer en cause avec le loyer moyen du quartier (cf. <ref-law>), ou en établissant, par capitalisation de celui-ci, le prix de revient théorique de l'immeuble (<ref-ruling> consid. 3.1 p. 435; <ref-ruling> consid. 3d et e p. 154 ss).
La date de construction des immeubles ici en cause ne ressort pas de l'arrêt attaqué. On ignore également si lesdits immeubles ont fait l'objet, avant 1980, de ventes et, le cas échéant, à quand remonte la dernière acquisition. Il est établi en tout cas que la construction ou la dernière acquisition des immeubles remonte à 32 ans ou plus au moment de la conclusion du bail. Dans ces circonstances, l'application au cas particulier des règles développées pour les immeubles anciens ne prête pas le flanc à la critique.
En appel, la recourante n'a pas contesté le loyer déterminé conformément à ces règles; elle ne le fait pas non plus devant la cour de céans, de sorte que la question est ainsi scellée.
2.4. En conclusion, la cour cantonale n'a pas violé le droit fédéral en ne procédant pas à un calcul de rendement net et en confirmant le loyer initial mensuel tel que fixé par le Tribunal des baux. Le recours sera dès lors rejeté.
3.
La recourante, qui succombe, prendra à sa charge les frais judiciaires (<ref-law>) et versera des dépens aux intimés (art. 68 al. 1 et 2 LTF).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
Les frais judiciaires, arrêtés à 4'000 fr., sont mis à la charge de la recourante.
3.
La recourante versera aux intimés une indemnité de 5'000 fr. à titre de dépens.
4.
Le présent arrêt est communiqué aux parties et à la Cour d'appel civile du Tribunal cantonal du canton de Vaud.
Lausanne, le 12 septembre 2016
Au nom de la Ire Cour de droit civil
du Tribunal fédéral suisse
La Présidente : Kiss
La Greffière : Godat Zimmermann